wpf - WPF TextBlock 元素和 Label 控件有什么区别?

标签 wpf

从视觉上看,以下两个片段都生成相同的 UI。那么为什么有 2 个控件..
片段1

<TextBlock>Name:</TextBlock>
<TextBox Name="nameTextBox" />

代码片段2

<Label>Name:</Label>
<TextBox Name="nameTextBox" />

(好吧,我自己回答这个问题...我认为这是我今天从 Programming WPF 学到的有用的花絮)

最佳答案

WPF Textblock 继承自 FrameworkElement,而不是像 Label Control 一样派生自 System.Windows.Control。这意味着 Textblock 更加轻量级。使用文本 block 的缺点是不支持访问/加速键,并且没有作为目标的其他控件的链接。

当您想单独显示文本时,请使用 TextBlock。这样做的好处是一种轻便、高性能的文本显示方式。

当您想要将文本与文本框等其他控件关联时,请使用标签控件。好处是访问 key 和对目标控制的引用。

关于wpf - WPF TextBlock 元素和 Label 控件有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59099/

相关文章:

c# - 对我的模型上的属性实现 IsDirty (WPF MVVM)

wpf - 当我们使用 win7 或其他操作系统的 RDC 关闭并重新连接到这台机器时,Win8.1 将向 WPF 应用程序触发卸载和加载事件

c# - WPF 鼠标按下事件

c# - 在可绑定(bind)的 RichTexBox 中加载 rtf mvvm wpf

c# - WPF C# - 从 TextBlock 获取内联格式的粗体文本

wpf - TextBlock 样式触发器

c# - BindingExpressionBase 在自定义 MarkupExtension 中为 null

c# - 在构造函数中设置 DataContext=this 和在 WPF 中绑定(bind)到 {RelativeSource Self} 之间的区别?

c# - 从 C# 代码动态切换 WPF 网格列的可见性

c# - WPF MVVM Load UI控件异步