UWP中ResourceDictionary文件的Build Action设置咨询
解决UWP中ResourceDictionary生成操作的配置问题
我之前从WPF转UWP开发时也碰到过一模一样的问题!其实UWP对XAML资源文件的处理逻辑和WPF完全不同,不用执着找WPF里的Resource选项,按下面的方法调整就能解决:
- 还原默认生成操作:UWP里的ResourceDictionary默认生成操作就是
Page,这就对应WPF里Resource的作用,能让系统正确识别并加载这个XAML资源文件。你之前改成Embedded Resource这类选项肯定会报错,先把它改回Page试试。 - 检查资源引用路径:确认你在App.xaml或者其他页面里引用这个ResourceDictionary的路径是否正确。举个正确的引用例子:
<Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="Styles/MyStyleDictionary.xaml"/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources> - 排查样式语法兼容性:UWP和WPF的XAML语法有细微差别,比如WPF里有些属性在UWP里不支持,或者写法不同。你说文件里只有简单样式,也可以检查下
TargetType这类属性的写法——UWP里直接写类型名(比如TargetType="Button"),不用加x:Type前缀,这点和WPF不一样。 - 清理重建项目:如果上面的步骤都做了还是有问题,试试清理项目后重新生成,有时候缓存会导致奇怪的加载异常。
总的来说,UWP不需要像WPF那样设置Resource生成操作,Page就是正确的配置,重点放在路径和语法的兼容性上就好。
内容的提问来源于stack exchange,提问作者dzaraev
相关产品推荐
相关产品推荐

