TextBox, TextBlock。 Lable
当中TextBox 和Lable均继承了Control类 能够对其进行模板编辑。
而TextBlock没有继承Control所以不能对其进行模板编辑
我的程序中须要做一个二级菜单。菜单项仅仅须要显示文字,而且水平。垂直都居中。而且能够设置图片背景,而且对背景进行隐藏控制就可以。
平时最经常使用的肯定是TextBlock 了。以为用它编辑模板,对背景做触发器进行动画控制,但发现事实上TextBlock原来仅仅能够编辑样式。不能对其编辑模板。转到定义到元数据。才发现:TextBlock : FrameworkElement, IContentHost, IAddChildInternal, IAddChild, IServiceProvider
原来TextBlock 直接继承了FrameworkElement 而并没有继承Controls
接下来想到的就是TextBox 将其背景,边框均进行设置也能够实现想要的效果,可是当调节文字的垂直居中时就不行了!
并且TextBox是可编辑的,尽管将其IsReadOnly属性设置成True 但还是有插入条。
假设将IsEnable设置成false 样式就不可控制了!
最后仅仅好改用Lable控件,它继承自Control能够对其进行模板编辑,并且。样式也easy设置。并且能够设置水平垂直居中!
仅仅是Lable接受的不是Text属性。
本文来自shouyu2851博客,转载请标明出处:http://blog.csdn.net/shouyu2851/archive/2011/06/30/6577669.aspx