当前位置: 移动技术网 > IT编程>开发语言>.net > WPF ResourceDictionary 主题资源替换

WPF ResourceDictionary 主题资源替换

2019年04月10日  | 移动技术网IT编程  | 我要评论

多肉植物论坛,开心茶馆,海贼王漫画729

当我们需要在程序中替换主题,更换另一套背景、颜色、样式时,如何在不修改资源key值,直接替换呢?

问题&疑问

 1. key值冲突

同一resourcedictionary中,不可以使用相同key

2. 资源替换

添加俩套样式,xaml下是否可以将原有的资源(如样式)替换成新的资源?

加载顺序是否会冲突,比如俩个字典中都存有image.search图片资源,最终会以哪个字典中的资源为准呢

 

resourcedictionary的合并方案

wpf的resourcedictionary合并时,合并的规则能解决此冲突及加载顺序问题

resourcedictionary合并:

  1. 检查reourcedictionary所有资源key列表
  2. 检查resourcedictionary.mergeddictionaries中的字典,从列表尾部遍历到表头。
  3. 按以上检查顺序,检查到相同key值时,会以检查到的首个key为准。即添加字典时,最后一个字典下的资源。

详细的,截图如下:

所以,不同主题的资源,可以通过mergeddictionaries添加不同的字典,以加载顺序来覆盖之前的主题资源。

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网