WPF-资源与样式
1.资源
1.1 简介
WPF资源系统是一种保管一系列有用对象(如常用的画刷、样式和模板)的简单方法,从而使您可以更容易地重用这些对象。
每个元素都有Resources属性,该属性存储了一个资源字典集合(它是ResourceDictionary类的实例)。
资源集合可包含任意类型的对象,根据字符串编写索引。
1.2 写法
Window的写法:
1
2
3
4<Window>
<Window.Resources>
</Window.Resources>
</Window>Control的写法:
1
2
3
4<Control>
<Control.Resources>
</Control.Resources>
</Control>2. 样式
2.1 简介
样式是修改View(窗体、控件)样式的主要手段,主要作用更改控件的外观以及增强用户体验。
2.2 样式的属性
属性名 | 含义 |
---|---|
Setterts | 设置属性值以及自动关联事件处理程序的Setter对象或EventSetter对象的集合是Style类中最重要的属性,但并非唯一属性。 |
Triggers | 继承自TriggerBase类能自动改变样式设置的对象集合。例如,当另一个属性改变时,或者当发生某个时间时,可以修改样式。 |
Resources | 希望用于样式的资源集合。 |
BasedOn | 通过该属性可创建继承自其它样式设置的更具体的样式 |
TargetType | 该属性标识应用样式的元素类型。通过该属性可创建只影响特定类型元素的设置器,还可以创建能够为恰当的元素类型自动起作用的设置器 |
2.3 如何关联样式
- DynamicResource(动态资源)
<Button Style="{StaticResource BtnStyle}" />
- StaticResource(静态资源)
<Button Style="{DynamicResource BtnStyle}" />
二者区别
静态资源在第一次编译后即确定其对象或值,之后不能对其进行修改。
动态资源在运行时决定,当运行过程中真正需要时,才到资源目标中查找其值。