动态加载资源文件(ResourceDictionary)

时间:2023-11-24 12:08:56

原文:动态加载资源文件(ResourceDictionary)

在xaml中控件通过绑定静态资源StaticResource来获取样式Style有多种方式:

1.在项目的启动文件App中<Application.Resources>里添加相应的样式内容,当然也可以在控件所在的控件的资源(如:<UserControl.Resources>)中添加相应样式内容

2.通过后台代码向当前程序的资源中动态添加,代码如下:(TextBlockStyle.xaml是一个ResourceDictionary,包含了所需样式),这段代码只要在引用样式的那个控件加载之前运行就可以。

ResourceDictionary resourceDictionary = new ResourceDictionary();
Application.LoadComponent(resourceDictionary, new Uri("/StaticResource;component/TextBlockStyle.xaml", UriKind.Relative));
Application.Current.Resources.MergedDictionaries.Add(resourceDictionary);