您可以像这样在 App.Xaml 中合并主题:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="defaulttheme.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
defaulttheme.xaml 文件必须位于项目的根目录中。如果您想为主题构建自己的项目,您可以像这样合并资源:
<ResourceDictionary Source="/MyThemeProject;component/defaulttheme.xaml" />
这里的 defaulthteme.xaml 也必须位于根目录的 MyThemeProject 中,并且不要忘记从主项目添加对该项目的添加引用。
要构建结构,您可以根据需要添加文件夹。
<ResourceDictionary Source="/MyThemeProject;component/Folder1/Folder2/defaulttheme.xaml" />
要切换主题,请先清除 MergedDictionaries,然后添加新主题
NewTheme = new Uri(@"/MyThemeProject;component/folder1/Folder2/bluetheme.xaml", UriKind.Relative);
Application.Current.Resources.MergedDictionaries.Clear();
Application.Current.Resources.MergedDictionaries.Add(NewTheme);
问候
吹嘘