在我的 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 會顯示一個工具提示,其中包含第一個參考的“路徑 X 未找到”和第二個參考ResourceDictionary的“路徑中的無效字符”(可能是因為“應用程式:,,”)訊息。
我想 WinUI XAML 在這方面可能與 WPF XAML 不同?或者甚至這還不支持?
uj5u.com熱心網友回復:
Pack URI 僅在 WPF 中使用。
UWP 和 Win UI 使用 ms-appx URI 方案來參考駐留在另一個程式集中的檔案,所以試試這個:
<ResourceDictionary Source="ms-appx:///ResourceTestLib/Styles/_Thickness.xaml" />
有關 UWP 樣式 URI 方案的更多資訊:
https://docs.microsoft.com/en-us/windows/uwp/app-resources/uri-schemes
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/378599.html
標籤:C# xaml uwp-xaml winui-3 windows-app-sdk
