如果Resource资源文件在程序集中,可直接如下将资源文件添加当当前运行时
Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary() { Source = new Uri("/xxx.xxx.xxx.;component/x.xaml", UriKind.Relative) });
如果resource资源文件是单独的一个文本文件(比如从服务端下载下来的文件),如上加载的话会提示加载失败或者会提示不能提供绝对路径的错误,此时可以通过System.Windows.Markup.Xaml将其转换为ResourceDirectory对象在加载到运行时
ResourceDictionary languageResource = System.Windows.Markup.XamlReader.Parse(System.IO.File.ReadAllText(languageFileFullName)) as ResourceDictionary; Application.Current.Resources.MergedDictionaries.Add(languageResource);