WPF系统颜色的符号名称?
Posted
技术标签:
【中文标题】WPF系统颜色的符号名称?【英文标题】:Symbolic names for WPF system colors? 【发布时间】:2018-12-07 03:43:31 【问题描述】:在哪里可以获得 WPF“系统”颜色的符号名称?我试过SystemColors
,但名字并没有告诉我太多,例如我没有看到禁用标签文本颜色的条目。
我正在寻找类似的东西——启用按钮文本颜色、启用按钮背景颜色、禁用按钮文本颜色等等。
【问题讨论】:
您能告诉我们您为什么需要它们吗?系统控件共享SystemColors.Control*
画笔,因此您不会为按钮、文本块等找到任何特定的系统颜色。如果您制作自己的控件,只需使用这些。
@Freggar,因为我设置了red
,然后设置了green
,然后我需要我的标签看起来像禁用的标签。如果我设置gray
,它可能适用于默认主题,但如果主题不同,gray
将作为禁用颜色无效。所以我需要像my_label.Foreground = SystemColors.Disabled....
这样的东西,但我找不到任何相关的东西。我看到了那些 ControlXXX
条目,但又没有与禁用颜色有关。
您可能想使用SystemColors.ControlDark
。 ***.com/questions/7766584/…
顺便说一句,您可以在 GUI 设计器中做一些巧妙的技巧。右键单击标签(在设计视图中)“编辑样式”->“编辑副本”。这将向您展示标签使用的不同画笔。你会发现标签实际上使用SystemColors.GrayTextBrushKey
来表示禁用的文本...
【参考方案1】:
您可以使用 x:Static 访问系统颜色:
<TextBox Text="Looks like disabled text" Foreground="x:Static SystemColors.GrayTextBrush"/>
查看默认样式和模板Control Styles and Templates 也很有意义,因为那里定义了很多颜色。
这里有SystemColors。
【讨论】:
以上是关于WPF系统颜色的符号名称?的主要内容,如果未能解决你的问题,请参考以下文章