我有一个简单的WPF应用程序用于实验。更改ResourceDictionary不会影响WPF中的窗口
我有两个主题在单独的xaml文件中定义,更改xaml指向他们工作正常。顺便说一下,在xaml中,我使用的是直接ResourceDictionary
元素,而不是ResourceDictionary.MergedDictionaries
。
我想让用户选择使用哪个主题,因此我将代码中的源属性重置 - 但调试器告诉我我已成功设置应用程序外观的值不会更改。
那么,如何在运行时成功应用主题?
编辑:这是我如何声明在XAML我的“风格”:
<Window x:Class="WpfUI.winMain">
<Window.Resources>
<ResourceDictionary Source="Themes\Blah.xaml"></ResourceDictionary>
</Window.Resources>
// The windows grid and other controls...
</Window>
制作新的ResourceDictionary(在代码中)并调用ApplyTemplate()成功应用主题/样式 - 但不是所有控件。 – 2010-08-16 05:13:39