我在我的解决方案中有一个项目,该项目仅用于为所有其他项目提供资源。我从该项目导入XAML文件中的资源,如下所示:
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Common.Ui;component/Resources/MetroIcons.xaml" />
<ResourceDictionary Source="pack://application:,,,/Common.Ui;component/Resources/SyncfusionIcons.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
当我这样做时,VS设计器(VS 2013)中的一切看起来都不错,但是当我运行应用程序时,我得到了一个XamlParseException,我无法从堆栈中弄清楚是什么错误。
或者,我尝试将资源放在同一个项目的文件夹中,然后像这样导入它们:
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../Resources/Icons/MetroIcons.xaml" />
<ResourceDictionary Source="../Resources/Icons/SyncfusionIcons.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
这确实没有问题。
从导致解析错误的其他程序集导入资源方面我做错了什么?