所以我有一个
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>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。