如何将子文件夹中定义的ResourceDictionary添加到App.xaml?

时间:2010-12-03 20:47:31

标签: wpf xaml resourcedictionary app.xaml

到目前为止,我发现的所有代码示例都引用了一个不在项目子文件夹中的资源字典(字典位于项目的根目录下)。我有一个子文件夹,我无法弄清楚如何让WPF找到它。这不起作用......

<Application.Resources>
     <ResourceDictionary Source="/Skins/Black/GlossyButtons.xaml"/>
</Application.Resources>

ASP.Net tilde语法似乎也不起作用。

这是在您的应用中包含ResourceDictionary以便WPF可以找到资源的最佳方式吗?我在这个特定情况下的目标是将GlossyButtons.xaml中定义的样式应用于我的应用程序中的所有按钮。

2 个答案:

答案 0 :(得分:6)

尝试Pack URI语法

http://msdn.microsoft.com/en-us/library/aa970069.aspx

<Application.Resources>
     <ResourceDictionary Source="pack://application:,,,/Skins/Black/GlossyButtons.xaml"/>
</Application.Resources>

答案 1 :(得分:5)

发现了问题 - WPF无法找到GlossyButtons.xaml中引用的程序集,但在我编译并执行了几次之前没有显示实际错误(.xaml存在问题)。显示的错误(首先)是无法找到GlossyButtons.xaml。

这有点令人困惑。