У меня есть простое приложение WPF, которое я использую для экспериментов.
У меня есть две темы, определенные в отдельных файлах xaml, изменение xaml для указания на них работало нормально. Кстати, в xaml я использую прямой ResourceDictionary
элемент, а не ResourceDictionary.MergedDictionaries
.
Я хочу позволить пользователю выбрать, какую тему использовать, поэтому я переустанавливаю свойство source в коде позади, но пока отладчик сообщает, что я успешно установил значение, при котором внешний вид приложения не изменяется. *
Итак, как успешно применить тему во время выполнения?
РЕДАКТИРОВАТЬ: Вот как я объявляю свой "стиль" в xaml:
<Window x:Class="WpfUI.winMain">
<Window.Resources>
<ResourceDictionary Source="Themes\Blah.xaml"></ResourceDictionary>
</Window.Resources>
// The windows grid and other controls...
</Window>