9

我正在构建 WPF 应用程序并在尝试引用资源字典时遇到错误。在我的 WPF 应用程序项目中,我有一个名为“Styles”的文件夹,其中包含我的应用程序的所有 xaml 样式模板:

VS2010 解决方案资源管理器

在我的 app.xaml 文件中,我有这个:

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Styles/MetroTheme.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

但是,当我将鼠标悬停在源属性上时,我收到一条错误消息,提示“查找资源字典“Styles/MetroTheme.xaml”时发生错误。我可以在 Visual Studio 和文件系统中的文件夹中看到 xaml 文件。

我还尝试了“/Styles/MetroTheme.xaml”和源属性的包 uri,但均未成功。知道为什么我收到此文件未找到错误吗?

4

4 回答 4

7

确保 MetroTheme.xaml 的构建操作设置为 Page。

在此处输入图像描述

于 2012-06-15T15:16:35.007 回答
5

我有同样的问题,但设置Build Action = Page并没有解决我的问题。原来我需要使用Pack URI Format。所以,

<ResourceDictionary Source="pack://application:,,,/Styles/MetroTheme.xaml"/>

编辑

事实证明,上述内容将消除构建错误,但仍会导致运行时错误。我需要包含完整的程序集规范以获得完整的解决方案(即使所有文件都在同一个程序集中):

<ResourceDictionary Source="pack://application:,,,/WpfApplication10;component/Styles/MetroTheme.xaml"/>
于 2017-05-06T18:55:02.800 回答
2

有时关闭 Visual Studio 并再次打开它可以解决此问题。

于 2019-06-05T21:57:09.610 回答
-1

在项目属性中将目标 .net 版本更改为较旧的版本,然后重置为以前的版本。

于 2018-05-30T14:27:06.653 回答