Tag: resourcedictionary

无法引用包含合并字典的资源字典

我有一个库,CommonLibraryWpfThemes,里面有几个Resource Dictionary XAML文件。 我的主题/ Generic.xml文件包含将所有其他文件合并在一起的ResourceDictionary.MergedDictionaries声明。 Generic.xaml <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="/CommonLibraryWpfThemes;component/ResourceDictionaries/BrushDictionary.xaml" /> <ResourceDictionary Source="/CommonLibraryWpfThemes;component/ResourceDictionaries/TextBlockDictionary.xaml" /> <ResourceDictionary Source="/CommonLibraryWpfThemes;component/ResourceDictionaries/LabelDictionary.xaml" /> <ResourceDictionary Source="/CommonLibraryWpfThemes;component/ResourceDictionaries/ButtonDictionary.xaml" /> <ResourceDictionary Source="/CommonLibraryWpfThemes;component/ResourceDictionaries/WindowDictionary.xaml" /> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> 在我的应用程序项目中,我引用了CommonLibraryWpfThemes,并且在App.xaml文件中明确引用了Generic.xml。 App.xaml – 失败 <Application x:Class="MyApp.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Application.Resources> <ResourceDictionary Source="/CommonLibraryWpfThemes;component/Themes/Generic.xaml" /> </Application.Resources> </Application> 这不起作用。 我运行我的应用程序时出现以下错误: System.Windows.Markup.XamlParseException occurred Message="Cannot find resource named '{_fadedOrangeBrush}'. Resource names are case sensitive. […]

从外部文件或程序集加载WPF样式或其他静态资源

我有几个WPF应用程序,我希望我所有的样式都在共享程序集中,而不是分别在每个应用程序中声明它们。 我正在寻找一种方法,所以我不必在现有的应用程序中改变我所有的Style="{StaticResource BlahBlah}" ; 我只是想添加这个样式程序集的引用,并从当前的应用程序中删除它,所以它是从程序集中提取的。 有什么办法吗?

ResourceDictionary在一个单独的程序集中

我有资源字典文件(MenuTemplate.xaml,ButtonTemplate.xaml等),我想在多个单独的应用程序中使用。 我可以将它们添加到应用程序的程序集中,但是如果我在一个程序集中编译这些资源,并让我的应用程序引用它,那会更好吗? 在构build资源组件之后,如何在我的应用程序的App.xaml中引用它? 目前我使用ResourceDictionary.MergedDictionaries合并单个字典文件。 如果我在一个程序集中有他们,我怎么能在xaml中引用它们?