Xaml UWP类库中的参考资源字典
我们有一个使用模板10的UWP应用程序。资源位于同一解决方案中的UWP类库中。当我们运行应用程序时,我们会得到错误 {Windows.UI.Xaml.Markup.XamlParseException:无法从'ms'找到资源-resource:///Files/Styles\按钮样式。xaml' 在App.xaml中,我们有Xaml UWP类库中的参考资源字典,xaml,uwp,uwp-xaml,Xaml,Uwp,Uwp Xaml,我们有一个使用模板10的UWP应用程序。资源位于同一解决方案中的UWP类库中。当我们运行应用程序时,我们会得到错误 {Windows.UI.Xaml.Markup.XamlParseException:无法从'ms'找到资源-resource:///Files/Styles\按钮样式。xaml' 在App.xaml中,我们有 <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Styles\Custom.xaml" />
<ResourceDictionary Source="Styles\ButtonStyle.xaml"/>
<ResourceDictionary Source="Styles\ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
我们在工作中遵循指导方针
那么错误是
{WINDOWS.U.XAML.MARUP.XAMLPARSEEXPRECT:未能分配给属性“Windows .uix.xAML.RetrueCigActudio.So源”,因为类型“Windows .Field.String”不能被赋值给类型…
我们还尝试了解决方案
那么错误是
{Windows.UI.Xaml.Markup.XamlParseException:无法从中找到资源pack://application:,,,,/LibraryName;组件/样式/自定义.xaml'
我们如何在UWP类库中引用ResourceDictionary?正如@Justin所指出的,这里的问题是您忘记在URI中添加类库名称。。假设您的解决方案中有一个名为“ClassLibrary1”的UWP类库。然后您可以将它们合并为:
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ClassLibrary1/Styles/Custom.xaml" />
<ResourceDictionary Source="ClassLibrary1/Styles/ButtonStyle.xaml"/>
<ResourceDictionary Source="ClassLibrary1/Styles/ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
或
另外,不要忘记将“ClassLibrary1”添加到主项目的引用中
此外,如果您的类库不在同一个解决方案中,则需要在类库的属性页下的构建配置中选中生成库布局选项。因为在WinRT环境中,资源不再嵌入程序集中,而是作为内容放置在dll旁边。因此,我们需要生成库布局,以便方便地在其他项目中引用dll。有关详细信息,请参阅。您没有正确地遵循第二个。链接中的项目名称在哪里?
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/LibraryName;component/Styles/Custom.xaml" />
<ResourceDictionary Source="pack://application:,,,/LibraryName;component/Styles/ButtonStyle.xaml"/>
<ResourceDictionary Source="pack://application:,,,/LibraryName;component/Styles/ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ClassLibrary1/Styles/Custom.xaml" />
<ResourceDictionary Source="ClassLibrary1/Styles/ButtonStyle.xaml"/>
<ResourceDictionary Source="ClassLibrary1/Styles/ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ms-appx:///ClassLibrary1/Styles/Custom.xaml" />
<ResourceDictionary Source="ms-appx:///ClassLibrary1/Styles/ButtonStyle.xaml"/>
<ResourceDictionary Source="ms-appx:///ClassLibrary1/Styles/ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>