0

我正在尝试使用以下代码创建 ResourceDictionary

        var rd = new ResourceDictionary
        {
            Source = new Uri(settings.TemplateLocation + templateName + ".xaml")
        };

但是,当我尝试这样做时,我得到一个异常说“ResourceDictionary LoadFrom 操作失败,URI:{location given above}”。我正在尝试从 ClassLibrary 项目中执行此操作。

当我尝试使用来自示例 WPF 应用程序的相同位置创建 ResourceDictionary 时,我没有遇到任何异常,并且工作正常。

知道会发生什么吗?让我知道是否有人需要更多信息来回答这个问题。

4

1 回答 1

0

如果您ResourceDictionary从项目中引用的类库加载,请使用:

     Source = new Uri("pack://application:,,,/ReferencedAssembly;component/SubFolder/ResourceFile.xaml", UriKind.Absolute);

在这里,您必须ReferencedAssembly用引用的程序集名称替换包含您SubFolder的文件的引用程序集项目中的文件夹名称。无需指定Subfolder文件是否放置在根目录和ResourceFile.xaml您的文件名

于 2013-10-24T04:19:32.643 回答