【问题标题】:Is there any difference between WPF TextBlock and TextBox?WPF TextBlock 和 TextBox 之间有什么区别吗? 【发布时间】:2013-08-13 08:32:20 【问题描述】: 在选择这两个控件之一时,我必须考虑哪些标准? 【问题讨论】: 还有RichTextBox 标签: wpf textbox textblock 【解决方案1】: TextBlocks 和 TextBoxes 通用: 可用于显示文字 可以设置为特定的高度和宽度,也可以设置为自动,以便它们随文本增大。 可以设置字体大小、字体类型、字体样式、换行和范围左、右或居中。 可以设置不透明度并应用像素着色器。 文本块: 用于以更集中的印刷方式显示文本。 可以包含设置为不同颜色、字体和大小的文本。 也可以从默认设置增加行高,以在每行文本之间留出更多空间。 TextBlock 内的文本不能由用户选择。 文本框: 用于显示更集中于内容输入的文本或需要使用户可选择内容时。 只能设置为一种颜色、一种字体大小、一种字体类型等。 具有固定的行间距。 也可以设置为固定的高度和宽度,但也可以打开滚动条以允许内容展开。 【讨论】: 文本如何聚焦?哦好的;我花了一段时间才明白,focused 是描述控件,而不是文本。 【解决方案2】: TextBlock 是用于显示文本的更轻量级的控件,当您需要用户输入或编辑现有文本时使用 TextBox。 Proof for mem usage。 【讨论】: 不确定 TextBlock 是否比 TextBox 轻。证明? 你好 Mike,当然 - 就内存使用而言,文本框要重得多:s22.postimg.org/qse9gxfch/memusage.png 万一将来某个时候的证明图像消失了。您的示例显示内存使用量有 14 倍的差异。代码在执行 stack.Children.Add 之前和之后使用 GC.GetTotalMemory(true) 分别在一个新的文本块和文本框上检查有多少内存不同。