【发布时间】:2014-08-24 16:52:06
【问题描述】:
要使用 WindowChrome 类自定义窗口的外观,我想在 Windows 8.1 中获取 WPF 窗口的标题栏颜色。
首先,我试过了
SystemParameters.WindowGlassColor
但是这个属性却不包含正确的 alpha 值(它总是 255)。
其次,我尝试了函数:
DwmGetColorizationColor
起初它似乎工作正常。返回值具有正确的颜色信息,包括 Alpha 通道。但是,当通过“颜色和外观”对话框中的滑动条更改“颜色强度”时,返回值将与实际值不同,并指示出一种奇怪的颜色。
那么,有人知道替代方法或解决方法吗?
【问题讨论】:
-
@Sheridan 感谢您的建议。我尝试了 SystemParameters.WindowGlassBrush 属性,但结果与 SystemParameters.WindowGlassColor 相同。不透明度始终为 1,颜色会随着“颜色强度”的变化而变化。根据Reference Source,它似乎是用 SystemParameters.WindowGlassColor 实例化的。