【发布时间】:2018-01-28 11:05:12
【问题描述】:
我正在尝试解决我在 Windows 7 上使用 VS2015 编写的 WPF 应用程序(屏幕保护程序)的渲染问题。
在 Windows 10 上,配置窗口看起来完全不同,更重要的是,由于它在 Windows 10 中的呈现方式,它几乎毫无用处。
这里有一些截图。一、windows 7
和 Windows 10
虽然有很多细微差别,但我希望如此,但不可原谅的是着色和切断控件。复选框被选中,你无法分辨。单选按钮被选中,你无法分辨。你甚至看不到底部控件。太垃圾了。
我做了一些研究,发现我可以覆盖主题,强制使用 Aero。我不知道这是否能解决我的问题,但我无法让它发挥作用。
根据我的研究,如果我将以下内容添加到 App.xaml,它可能会解决问题。
<Application.Resources>
<ResourceDictionary Source="/PresentationFramework.Aero;component/themes/Aero.NormalColor.xaml" />
<ResourceDictionary Source="pack://application:,,,/WPFToolkit;component/Themes/Aero.NormalColor.xaml" />
</Application.Resources>
但是,这样做会在 VS2017 中给我一个警告:
“资源”属性只能设置一次。
所以,我什至无法测试它。我还没有找到解决这个问题的方法。如何让它发挥作用?
--------- 更新 1 ----------
在 cmets 的帮助下,我得到了:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Aero;component/themes/Aero.NormalColor.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
但是,现在应用程序根本无法运行。
您的应用已进入中断状态,但没有可显示的代码,因为所有线程都在执行外部代码(通常是系统或框架代码)。
原文来源GitHub
【问题讨论】:
-
你的 win 10 dpi 缩放比例是多少?
-
资源字典;你可以合并它们(如果需要),更多关于这件事的信息可以在这里找到:stackoverflow.com/questions/3419543/…
-
检查这个例子的字典,它应该可以工作。 stackoverflow.com/questions/35102321/…,否则值得提问 ;-)
-
我会为此发布一个新问题
标签: c# wpf windows-10 visual-studio-2017 aero