【发布时间】:2020-07-15 11:18:46
【问题描述】:
我需要让我的应用程序的窗口标题根据在 Windows 10 中为 WindowChrome 设置的颜色而改变颜色。
是否有一个 WPF 属性可以绑定到文本颜色,该属性会自动采用实际清晰的正确颜色(黑色或白色)?
是否必须手动计算正确的颜色,如果需要,如何确定 WindowChrome 的颜色?
【问题讨论】:
-
为什么要更改标题颜色?你想达到/解决什么?
-
如果用户为其标题栏设置了深色,则默认的黑色窗口标题难以辨认。
-
您可以从system colors 获取颜色,然后对其进行修改(可能类似于this,另请参见this)。如果您只想检查使用哪种颜色(黑色或白色),则将颜色转换为灰度并与中间进行比较。
-
谢谢,我正打算这样做,但 WindowChrome 的颜色不包含在 SystemColors 中
-
应该是
ControlBrush(source)。