MaKui

博客园 首页 新随笔 联系 订阅 管理

1. Resource的基本目的是为了在Xaml中实现复用。最常见的是在Resource中定义Style和Template。

 

2. 用x:key来标识一个Resource。key在同一个Resource Section中不允许重复,但不同的section中可以有相同的key,只要在使用时能确定唯一的Resource即可。查找Resource的路径:元素自己-->父元素-->Application。如果ResourceDictionary中引用了多个资源文件,文件中定义了相同的key,则后边的会将前面的内容覆盖掉。

 

3. Static Resource在加载时创建一次,它的key被丢弃,Resource对象会被一直使用(类似于程序中的静态变量)。相对地,Dynamic Resource在真正被使用时才创建,且key会被保存,当元素重绘时会根据key再次创建。

 

4. Static Resource在引用时必须是已经被定义过的,而Dynamic Resource则允许前向引用。

 

5. Dynamic Resource主要用来存取系统资源,比如系统颜色。

 

6. 无论是Static Resource还是Dynamic Resource都不具有象Binding一样的变化通知功能。动态资源看上去似乎是随系统设置变化而自动更新,但实际上是由于系统设置变化引起Element重绘,从而再次加载Dynamic Resource,并非Dynamic Resource自身有变化通知功能。

posted on 2011-09-21 22:09  MaKui  阅读(1100)  评论(0)    收藏  举报