当ResourceDictionary位于子文件夹中时,VS2010设计器无法正常工作

时间:2011-04-06 09:45:12

标签: c# wpf visual-studio-2010 xaml resourcedictionary

我有一个项目,其中包含我的应用程序的入口点和ResourceDictionary。这些文件第一次位于项目的根目录下。这时,我可以在其他项目的xaml文件设计器中看到由样式修改的所有组件(例如按钮)。

现在,我有这样的子文件夹:src / launcher包含我的入口点和包含我的ResourceDictionary的src / styles。但是现在,组件在VS2010的设计者中没有设计风格。该程序编译并运行良好,但设计师无法正常工作。我不断地得到“找不到资源......”错误。 我的主要xaml文件的代码是:

<Application x:Class="MANAGER.Program"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             Startup="Application_Startup">
    <Application.Resources>
        <ResourceDictionary Source="../Styles/Style.xaml"></ResourceDictionary>
    </Application.Resources>
</Application>

为什么设计师不起作用?

2 个答案:

答案 0 :(得分:0)

它可能与“Source”属性的格式有关。 格式需要是一个Pack URI,如“pack:// siteoforigin:,,, / SiteOfOriginFile.xaml”

在MSDN中查看这些文档:

答案 1 :(得分:0)

您的代码应该是这样的,以便在应用程序根目录中使用子目录:

<Application x:Class="MANAGER.Program"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             Startup="Application_Startup">
    <Application.Resources>
        <ResourceDictionary Source="pack://siteoforigin:,,,../Styles/Style.xaml"></ResourceDictionary>
    </Application.Resources>
</Application>
相关问题