当前位置:  开发笔记 > 开发工具 > 正文

WPF TextBlock元素和Label控件之间有什么区别?

如何解决《WPFTextBlock元素和Label控件之间有什么区别?》经验,为你挑选了2个好方法。

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

Name:

Snippet2



(好吧,我自己会回答这个问题......认为这是我今天从编程WPF学到的一个有用的小问题)



1> Alan Le..:

WPF Textblock继承自FrameworkElement,而不是像Label Control那样从System.Windows.Control派生.这意味着Textblock更轻量级.使用文本块的缺点是不支持Access/Accerelator Keys,并且没有指向其他控件的链接作为目标.

如果要单独显示文本,请使用TextBlock.好处是显示文本的轻松,高效的方式.

如果要将文本与TextBox等其他控件关联,请使用Label控件.好处是访问键和目标控件的引用.


@Kugel:我在链接页面中看不到对"Label"的引用,所以我看不出这是一个"TextBlock"慢于"Label"的理由.你能详细说明吗?如果`Label`使用`TextBlock`进行渲染,如http://joshsmithonwpf.wordpress.com/2007/07/04/differences-between-label-and-textblock/建议,是什么让`TextBlock`更慢?

2> Gishu..:

Label有一个重要的焦点处理责任.它的目的是允许您使用访问键放置标题.它有一个Target属性,用于指示访问密钥的目标.像这样...



在没有Target属性的情况下,Label控件没有任何用处.如果您按下指示"无法处理请求"的访问键,您将听到一声蜂鸣声

推荐阅读
保佑欣疼你的芯疼
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有