gpt4 book ai didi

c# - 在另一个程序集中引用 ResourceDictionary

转载 作者:行者123 更新时间:2023-11-30 21:56:06 27 4
gpt4 key购买 nike

我有一个类库项目,它对其他几个项目是通用的。它的程序集名称是“MyCompany”,它的默认命名空间也是“”。

然后在这些其他项目之一(命名空间“MyCompany.Something”)中,我引用了 dll,并且我想使用“MyCompany”中的资源字典。

我找到了这个:Add ResourceDictionary to class library

所以我完全按照它说的做了,我位于“MyCompany”根目录的 xaml 文件被命名为“Recursos.xaml”,构建操作设置为资源,而不是复制和空白自定义工具和自定义工具命名空间,具有以下内容:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />
<ResourceDictionary Source="pack://application:,,,/Resources/Icons.xaml"/>
</ResourceDictionary.MergedDictionaries>
-- some other styles...
</ResourceDictionary>

然后,在我的 WPF 应用程序项目中,我在 App.xaml 中有以下内容:

<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
<ResourceDictionary Source="pack://application:,,,/MyCompany;component/Recursos.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

只是为了测试目的添加了 Controls.xaml。那个行得通,但我的行不通:

查找资源字典时出错 "pack://application:,,,/MyCompany;component/Recursos.xaml"

所以不知道为什么不识别。该引用有效,因为我可以使用其中的每个类。

最佳答案

像这样尝试它会起作用:项目 ABC 引用了项目 XYZ。

   <ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Project XYZ;component/YourSubFolder/YourResourceFile.xaml" />
</ResourceDictionary.MergedDictionaries>

然后您可以只使用 YourResourceFile.xaml 中定义的资源。

关于c# - 在另一个程序集中引用 ResourceDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31716752/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com