WPF为啥改变TextBlock字体Button,Label等控件的字体都变了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF为啥改变TextBlock字体Button,Label等控件的字体都变了相关的知识,希望对你有一定的参考价值。

因为wpf里每个控件都有其控件模板(ControlTemplate)。如果你有blend可以任意打开个控件看看其Template里的内容。Button,Label等控件显示文字的地方在它们的模板内都用了
TextBlock。
所以当你设置TextBlock的样式的时候,这些控件的字体也都变了。
参考技术A 你好!
因为button
label等控件默认模版里显示文字的地方用的就是textblock.
所以textblock写样式时必须得加Key,然后需要用样式的textblock
显示引用样式。
如有疑问,请追问。

wpf 用button实现TextBlock里字体颜色的切换

在button单击事件里先实例化一个brush对象,再将此对象赋值到foreground。
代码如下

参考技术A private void Button_colorChange_Click(object sender, RoutedEventArgs e)

textblock_1.Foreground = Brushes.Red;

以上是关于WPF为啥改变TextBlock字体Button,Label等控件的字体都变了的主要内容,如果未能解决你的问题,请参考以下文章

wpf 用button实现TextBlock里字体颜色的切换

WPF如何改变GridView字体大小

wpf中怎么是鼠标移动到textblock中的字体上使其改变颜色

WPF 动态生成一个button 和一个textblock 怎么给textblock添加数据

wpf中 定义一个button 在button的内部放置一个label,当点击label的时

如何计算已知字体大小和字符的 WPF TextBlock 宽度?