1
我以为这会有一个简单的答案,但经过一个小时的搜索后,我没有接近答案。我只想让WPF工具包使用Aero主题,而不管用户是否启用了该主题。在我的App.xaml中,我已经包含了Aero主题,并且在项目中包含了该库。如何强制WFP Toolkit使用Aero主题?
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Aero;component/themes/Aero.NormalColor.xaml"/>
...
</ResourceDictionary.MergedDictionaries>
这从WPF工具包还扩展它的伟大工程的所有正常对照(按钮,文本框等),但对于SplitButton使用用户当前已启用的任何主题。我可以设计一个控件,但我承认对主题的工作方式有点无知。我如何告诉SplitButton使用Aero主题?浏览WPF Toolkit的源代码我看到有Aero主题文件夹,我试过在App.xaml中包含这些文件夹,但似乎没有区别。我试过了:
<ResourceDictionary Source="/Xceed.Wpf.Toolkit;component/Themes/Aero/Brushes_NormalColor.xaml" />
<ResourceDictionary Source="/Xceed.Wpf.Toolkit;component/Themes/Aero/Buttons_NormalColor.xaml" />
<ResourceDictionary Source="/Xceed.Wpf.Toolkit;component/SplitButton/Themes/Aero/Brushes_NormalColor.xaml"/>
没有效果。我只想让我的应用程序在Windows XP,Vista和Windows 7的各个版本中保持一致。
就像我说过的,我将Aero主题添加为参考,它适用于所有常规按钮等。它是WPFToolkit中的SplitButton,它仍然使用用户桌面设置的任何主题。 – millejos
我看了一下模板,并用系统设置了一些颜色,就像你说的。 [转到源代码](https://wpftoolkit.codeplex.com/SourceControl/latest#Main/Source/ExtendedWPFToolkitSolution/Src/Xceed.Wpf.Toolkit/SplitButton/Themes/)并将颜色更改为任何你想要的。注意颜色设置为'... System.' – Tico