gpt4 book ai didi

c# - WinUI XAML : Using a ResourceDictionary from another project

转载 作者:行者123 更新时间:2023-12-03 08:13:19 25 4
gpt4 key购买 nike

在我的 WinUI 3 应用程序中,我尝试使用位于另一个项目中的 ResourceDictionary。

假设引用的项目是 ResourceTestLib,并且该库项目有一个文件夹“Styles”,其中包含一个文件“_Thickness.xaml”。

在主应用程序的 app.xaml 文件中,我在“此处的其他合并词典”注释下方尝试了这两种方法,但它们似乎都不起作用,即该应用程序在启动时崩溃带有该消息“无法找到资源......”消息。

这是我的 app.xaml:

<Application.Resources>
<ResourceDictionary>

<ResourceDictionary.MergedDictionaries>
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />

<!-- Other merged dictionaries here -->
<ResourceDictionary Source="/ResourceTestLib;component/Styles/_Thickness.xaml"/>
<ResourceDictionary Source="pack://application:,,,/ResourceTestLib;component/Styles/_Thickness.xaml"></ResourceDictionary>
</ResourceDictionary.MergedDictionaries>

</ResourceDictionary>
</Application.Resources>

当我将鼠标悬停在相应的行上时,Visual Studio 会显示一个工具提示,其中第一个引用的 ResourceDictionary 的“路径 X 未找到”和“路径中的字符无效”(可能是因为“application: ,,,") 第二条消息。

我认为 WinUI XAML 在这方面可能与 WPF XAML 不同?或者甚至还不支持这一点?

最佳答案

Pack URI 仅在 WPF 中使用。

UWP 和 Win UI 使用 ms-appx URI 方案来引用驻留在另一个程序集中的文件,因此请尝试以下操作:

 <ResourceDictionary Source="ms-appx:///ResourceTestLib/Styles/_Thickness.xaml" />

有关 UWP 样式 URI 方案的更多信息:

https://learn.microsoft.com/en-us/windows/uwp/app-resources/uri-schemes

关于c# - WinUI XAML : Using a ResourceDictionary from another project,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70215170/

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