xaml – Windows 10 Universal Merged Dictionaries

所以我有一个 Windows通用类库,其中包含一个资源字典,我想与App.xaml中的Windows 10 Universal Application主资源字典合并.

我的App.xaml只是从同一个程序集中合并到我的主资源字典中.

<Application.Resources>
    <ResourceDictionary>

        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Styles/Styles.xaml"/>
        </ResourceDictionary.MergedDictionaries>

    </ResourceDictionary>
</Application.Resources>

然后从我的主资源字典(Styles / Styles.xaml)中我合并来自同一程序集的其他资源字典.这是我想在另一个程序集的资源字典中合并的地方:

<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="Fields.xaml"/>
    <ResourceDictionary Source="DataTemplates.xaml"/>
    <!--<ResourceDictionary Source="/{AssemblyName};component/Shared.xaml" />-->
    <!--<ResourceDictionary Source="pack://application:,/{AssemblyName};component/Shared.xaml" />-->
    <ResourceDictionary Source="ms-appx:///{AssemblyName}/Shared.xaml" />
</ResourceDictionary.MergedDictionaries>

我已经尝试将其添加到我的主资源字典中:

<ResourceDictionary Source="/{AssemblyName};component/Shared.xaml" />

还有这个…

<ResourceDictionary Source="ms-appx:///{AssemblyName}/Shared.xaml" />

基于this article关于Windows 8.x商店应用程序,这似乎应该如何工作.但它仍然无效.

还有这个…

<ResourceDictionary Source="pack://application:,/{AssemblyName};component/Shared.xaml" />

(这是WPF的方式,我知道,但我想我还是试一试!)

但似乎没有工作……

我在应用程序集中的资源字典的构建操作设置为“页面”.这些资源字典在合并中正在使用它:

<ResourceDictionary Source="Styles/Styles.xaml"/>

我得到以下神秘错误

Failed to assign to property
‘Windows.UI.Xaml.ResourceDictionary.source’ because the type
‘Windows.Foundation.String’ cannot be assigned to the type
‘Windows.Foundation.Uri’. [Line: 12 Position: 37]

正如Romasz在评论中提到的那样,您需要参考包含样式的项目.然后使用以下代码进行参考.
<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="ms-appx:///UserControlLibs/Styles.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

相关文章

Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...
Windows文件操作基础代码 Windows下对文件进行操作使用的一段...
Winpcap基础代码 使用Winpcap进行网络数据的截获和发送都需要...
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看...