所以,我刚刚切换到Windows 10,我注意到我所有的桌面WPF
应用程序都明显地" uglier"比他们在Win7 / Win8上的地方。
我知道这听起来主观/毫无意义,但让我更精确。以下是UI的可用性/清晰度的客观降级的一些示例:
button
s不会变平(再次参见图片)ListView
项目未在mouseOver上突出显示ProgressBar
有"蓝色部分" XP之前的样子答案 0 :(得分:0)
修改强>
在另一台机器上测试后,发现问题与WPF或Windows无关。
请勿在互联网上找到win10的任何调整,以恢复Windows边框上的色彩。它弄乱了WPF主题引擎。
抱歉浪费你的时间。
好吧,我发现了如何解决它(感谢gix指出我正确的方向):
第一步:参考项目中的PresentationFramework.Aero2
程序集
第二步:将以下内容添加到App.xaml
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Aero2;component/themes/Aero2.NormalColor.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
现在它看起来像在Windows 8中。注意,如果你想要Windows 7外观(当然也改变引用的dll!),你也可以使用Aero
而不是Aero2
,但是我认为Aero2
在Win10上看起来更“原生”。
修改强>
经过进一步的测试,结果证明这并非100%完美,尽管它足够接近。例如:禁用的文本框不会显示为灰色, ListView
似乎根本没有受到影响,它们看起来仍然像是从Windows 98的屁股中爬出来...如果有人知道如何制作Aero2风格坚持它们也会很棒