我有一個簡單的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