.net – 在Expression Blend中从引用的程序集加载资源时出现问题

我在Expression Blend中从引用的程序集加载UserControl的资源时遇到问题

这是相关代码:

<UserControl.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="pack://application:,,,/Referenced.Assembly;component/Resources/ResourceDictionary.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</UserControl.Resources>

我也试过这个URI变体:

<ResourceDictionary Source="/Referenced.Assembly;Component/Resources/ResourceDictionary.xaml"/>

在Visual Studio 2008 SP1(代码和设计器)中,一切正常,应用程序正在使用指定的资源.在Expression Blend 3中加载解决方案并打开UserControl XAML文件时,它会显示“未找到指定的文件”(或者类似于我,我有.NET Framework的本地化版本)没有其他信息,在Visual中调试Blend进程时不会抛出异常工作室.

有任何想法吗?

最佳答案 好的,经过一番挖掘后我发现了问题.我将遇到此问题,请记住将此代码添加到.csproj文件中:

<ProjectTypeGuids>
  {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};
  {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
</ProjectTypeGuids>

更容易解决此问题的方法是创建新项目并选择模板WPF自定义控件库而不是类库.

点赞