我想在 WPF 中实现 ASP.Net 类型主题。用户可以选择各种预定义主题,并且可以切换到另一个主题。
为了实现这一点,我尝试为每个主题创建不同的资源字典,并使用键存储所需的样式。所有主题中的键集合都是相同的,但每个主题的定义都不同。
我使用下面的代码在单击时切换主题:
var theme = Application.LoadComponent(uri) as ResourceDictionary;
Application.Current.Resources.MergedDictionaries.Clear();
Application.Current.Resources.MergedDictionaries.Add(theme);
在所有页面/用户控件/窗口中,我都设置了 StaticResource 并应用了适当的键。
当我切换到另一个主题时,它是仅在 UI 上的下一个事件之后应用.
如果我将静态资源更改为动态资源,那么它会立即应用。
请分享您使用 StaticResource 实现这一目标的想法?
看看这个问题
WPF 和 MVVM - 动态更改主题
您可以从下面的链接下载预定义的主题
http://wpf.codeplex.com/wikipage?title=WPF%20Themes
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)