9.属性设置的几种方式
使用特性语法:
每个属性对应每一个属性值,每个属性值与属性匹配,一个标记中可以设置对象的多个属性
使用元素属性语法:
对于无法使用特性语法或无法用特性语法很好的表达时使用的语法。
使用内容元素语法:
某些元素的属性支持内容元素语法,允许忽略元素的名称实力对象会根据XAML元素中的第一个标记值来设置属性对于大量的格式化文本,使用内容元素语法更加灵活。
使用集合语法:
XAML 规范要求 XAML 处理器实现来标识值类型为集合的属性。
10.基本属性,附加属性和依赖属性
附加属性:
附加属性作用于支持附加属性的值。
附加属性是由支持附加属性的父元素产生作用,支持附加属性的元素会继承所在父元素的属性。
附加属性的格式:AttachedPropertyProvider.PropertyName。
依赖属性:
依赖属性和crl属性类似,提供一个实例级私有字段的访问封装,通过GetValue和SetValue访问器实现属性的读写操作。
属性依赖于一个或多个数据源,提供这些数据源的方式也可以不同。
由于依赖数据源的缘故,顾称之为依赖属性。
11.标记扩展
StaticResource:通过替换已定义资源的值来为属性提供值。
DynamicResource:通过将值推迟为对资源的运行时引用来为属性提供值。
Binding:使用在运行时应用于父对象的数据上下文来为属性提供数据绑定值。
RelativeSource:提供的愿信息Binding,该信息可在运行时对象树中导航几个可能的信息。
使用self模式时,目标对象将作为原对象绑定到自身,可以实现同一对象元素不同属性之间的绑定操作。
使用TemplatedParent模式,仅在控件模板或者数据模板下有效,不同模板将返回不同类型的绑定结果。
TempleBinding:使控件模块能够使用模板化属性的值,这些属性来自于将使用改模板的类的对象模型定义属性。
12.WPF的五种绑定模式
OneWay:源变就更新目标属性。
TwoWay:源变就更新目标并且目标变就更新源。
OneTime:只根据源来设置目标,以后都不会变。
OneWayToSource:于OneWay相反。
Default:可以单向可以双向。
13.路由事件
浮生: 调用事件源上的事件处理程序。 路由事件随后会路由到后续的父级元素,直到到达元素树的根。
隧道: 最初将调用元素树的根处的事件处理程序
直接:只有源元素本身才有机会调用处理程序以进行响应
14.资源
StaticResource:静态资源为属性提供给一个值
DynamicResource:动态资源将属性值延迟引用为资源的运行时引用
资源字典:
1)WPF应用程序中,XAML资源分为StaticResource(静态资源)和DynamicResource(动态资源)
2)资源应用域不同,XAML资源可分为FrameworkElement.Resources和Application.Resources
资源字典整合:1.创建资源字典,2.在启动页面引用,3.在项目即可进行调用
15.Style样式
Setter:设置器,Setter类的Property属性用来指明你想为目标的那个属性赋值;Setter类的Value属性则是你提供的属性值。
Trigger:触发器
1)基本Trigger:正常的使用Property和Value
2)MulitTrigger:必须多个条件同时成立
3)由数据触发的DataTrigger:
4)多数据条件触发的MultiDataTrigger
5)由事件触发的EventTrigger
16.形状绘图
直线Line使用X1、Y1两个属性可以设置它的起点坐标,X2、Y2两个属性则用来设置其终点坐标
矩形Rectange
椭圆Ellipse
多边形Polygon
多线型Polyline