2.1:Windows消息机制中重要概念之一,最常见的人机交互手段之一
2.12XAML帮助应用管理用户输入,执行不同的行为
2.3:引入增强型事件处理系统-Routed Event(路由事件)
2.4:事件常常被用于控制更改通知操作
一、事件基础语法
基础语法:
路由事件处理方式
3.1:浮升(冒泡): 调用事件源上的事件处理程序。 路由事件随后会路由到后续的父级元
素,直到到达元素树的根。
3.2:隧道: 最初将调用元素树的根处的事件处理程序。 随后,路由事件将朝着路由事件
的源节点元素(即引发路由事件的元素)方向,沿路由线路传播到后续的子元素。
3.3:直接: 只有源元素本身才有机会调用处理程序以进行响应。 这类似于 Windows 窗
体用于事件的 “路由”。 但是,与标准 CLR 事件不同,直接路由事件支持类处理 (类
处理将在下一节中介绍) 并可由 EventSetter 和使用 EventTrigger 。
1.视觉树(页面构成)
2.逻辑树(人为理解)
Style样式及其触发器
Sytle中的Setter
构成Stye最重要的两种元素时Setter和Tringger,Setter类帮助我们设置控件静态外光风格,Tringger控件的则帮助我们设置行为风格
4.1:Setter,设置器 ,我们给属性赋值的时候一般采用属性名=属性值的形式,Seter类的Property属性用来指明你想成为目标的那个属性赋值;Setter类的Value 属性则是你提供的属性值:
4.2:Tringger触发器,类似于Setter,Trigger也有Property和Value这两个属性,Property是Trigger关注的属性名称,Value是触发条件
4.3:MultiTrigger:因为必须多个条件同时成立时才会被触发。MultiTrigger比Trigger多了一个Conditions属性,需要同时成立的条件就存储在这个集合中。
4.4:由数据触发的DataTrigger:DataTrigger。DataTrigger对象的Binding属性会把数据源源不断送过来,一旦送来的值与
Value属性一致,DataTrigger即被触发。
4.5:多数据条件触发的MultiDataTrigger:用户界面上使用ListBox显示了一列Student
数据,当Student对象同时满足ID为2、Name为Tom的时候,条目的高亮显示。
4.6:由事件触发的EventTrigger:它不是由属性值或数据的变化来触发而由事件来触发;其次,被触发后它并非应用一组Setter,而是执行一段动画
样式
1:属性样式:直接通过UI元素的属性设置的样式
1.1:适用于复用对不高的属性
2:能联样式:通过在UI元素中嵌入Style节点来设置样式
2.1:实际上是设置元素的Style属性:
2.2:若内联样式与属性样式对同一属性进行设置,以属性设置的样式为准
3:引用样式:定义资源字典中的样式
引用样式可以分为:
3.1:页面级样式
3.2: 应用程序级样式
4:页面级样式(写在页面上)
应用程序级样式(写在App.xaml里面)
与页面级样式的定义方式和应用方式相同,差别有两个方面:
定义位置不同
作用范围不同