通用Windows/Windows Phone 8.1 (WinRT)应用程序合并资源字典导致错误
本文关键字:Windows 资源 合并 字典 错误 应用程序 WinRT Phone 通用 | 更新日期: 2023-09-27 18:09:05
我有一个Windows 8.1 (WinRT)应用程序和一些UI类库,我试图合并资源字典彼此更好地分割我的资源。我有以下三个项目的资源:
Framework.UI。通用类库
这是泛型。xaml文件包含在这个项目的Themes文件夹中:
<ResourceDictionary>
<!-- Contains some resources used by Windows and Windows Phone -->
</ResourceDictionary>
Framework.UI。Windows类库
这是另一个泛型。xaml文件包含在这个项目的Themes文件夹中。正如你所看到的,我正在从通用项目中合并资源字典,以及添加其他资源。
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ms-appx:///Framework.UI.Universal/Themes/Generic.xaml"/>
</ResourceDictionary.MergedDictionaries>
<!-- Contains Windows specific resources -->
</ResourceDictionary>
MyApp。Windows (Windows 8.1 App Project)
这是我的Windows 8.1应用程序。我正在合并Windows特定的资源字典到App.xaml文件,以及添加应用程序特定的资源。
<Application x:Class="CurrencyConverter.Client.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:InfrastructureViews="using:Infrastructure.Client.Views"
RequestedTheme="Light">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ms-appx:///Framework.UI.Windows/Themes/Generic.xaml"/>
</ResourceDictionary.MergedDictionaries>
<!-- Contains Windows app specific resources -->
</ResourceDictionary>
</Application.Resources>
</Application>
理论上这应该可以工作,但是我在启动时得到一个异常,错误信息如下:
在合并资源字典中检测到循环
重命名泛型。将Universal项目中的xaml设置为UniversalGeneric。Xaml解决了这个问题。