一、属性(Property)
1.理解static静态成员
静态字段在内存中只有一个拷贝,非静态字段则是每个实例拥有一个拷贝。
无论是静态方法还是非静态方法,在内存中都只有一份拷贝,区别只是你能通过类名来访问存放指令的内存,还是通过实例名来访问存放指令的内存。
CLR属性:private字段的安全访问包装,语法糖。
2.依赖属性(Dependency Property)
自己可以没有值,并能通过使用Binding从数据源获得值(依赖在别人身上)的属性。
与CLR属性比:节省实例对内存的开销;属性值可以通过banding依赖在其他对象上。
依赖对象(Dependency Object):WPF允许对象在被创建的时候并不包含用于存储数据的空间(即字段所占用的空间),只保留在需要用到数据时能够获得默认值,借用其他对象数据或实时分配空间的能力。他这种实时获取数据的能力则依靠依赖属性来实现。
二、事件
1.什么是路由
起点和终点之间有若干个中转站,从起点出发后经过每个中转站时要做出选择,最终以正确(如最短或者最快)的路径到达终点。
2.逻辑树和视觉树
简单理解:
逻辑树:一棵树,布局、控件等是他的叶子;
视觉树:拿放大镜再观察这些叶子的具体结构。