.net pack://application:,,,/ResourceFile.xaml永远不起作用
我从来没有能够让这种参考格式的资源字典工作。我错过了什么 情景: 创建并组装包含一些用户控件的组件。.net pack://application:,,,/ResourceFile.xaml永远不起作用,.net,wpf,resourcedictionary,.net,Wpf,Resourcedictionary,我从来没有能够让这种参考格式的资源字典工作。我错过了什么 情景: 创建并组装包含一些用户控件的组件。 在根目录下,您已经说过文件{root}/Themes/ColorThemes.xaml ColorThemes.xaml文件的生成操作设置为。 然后在下面的xaml文件中,假设{root}/Controls/ButtonStyles/Themes/ButtonThemes.xaml(注意路径只是一个示例) 在这个文件中,我有以下代码: <ResourceDictionary.MergedD
在根目录下,您已经说过文件{root}/Themes/ColorThemes.xaml
ColorThemes.xaml文件的生成操作设置为。
然后在下面的xaml文件中,假设{root}/Controls/ButtonStyles/Themes/ButtonThemes.xaml(注意路径只是一个示例) 在这个文件中,我有以下代码:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Themes/ColorThemes.xaml"/>
</ResourceDictionary.MergedDictionaries>
就州而言,这应该是可行的(据我所知),而当我在设计器中时,它似乎很好(所有颜色加载等),但是当我去编译我的应用程序并运行它时,我得到了这个错误{“找不到资源'themes/colorthemes.xaml.”,这很奇怪,因为它似乎在构建器中使用得很好。所以我有点困惑,因为它似乎与文档不符。如果有人能向我解释一下我遗漏了什么:)
注意:如果我将以前的代码更改为
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../../../Themes/ColorThemes.xaml"/>
</ResourceDictionary.MergedDictionaries>
但对于cleanese来说,它工作得很好pack://application: .试试:
pack://application:,,,/YOURNAMESPACEHERE/ColorThemes.xaml
例如
无法重现您的问题。所有这些变化都很好:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Themes/ColorThemes.xaml"/>
<ResourceDictionary Source="/Themes/ColorThemes.xaml"/>
<ResourceDictionary Source="../../Themes/ColorThemes.xaml"/>
</ResourceDictionary.MergedDictionaries>
请注意pack://application:,,,
是可选的,/
引用当前程序集的根
请提供再现您的问题的完整示例。这是由项目的命名空间习惯造成的。这个问题似乎是由同一个程序集中不同的名称空间引起的。我遇到了同样的事情,这就是为什么我第一个想到的就是这个问题。pack://application:,,,/YOURASSEMBLYNAME;组件/Themes/ColorThemes.xaml。Uri MSDN:。在Themes/Generic.xaml中合并字典或alle-cc-xaml也是很常见的。我通常将我的cc拆分,并将其命名为CcName.Generic.xaml。但那正是我的口味。。
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Themes/ColorThemes.xaml"/>
<ResourceDictionary Source="/Themes/ColorThemes.xaml"/>
<ResourceDictionary Source="../../Themes/ColorThemes.xaml"/>
</ResourceDictionary.MergedDictionaries>