inotifypropertychanged:如果是类实例里的属性更改需要触发xaml改变,则该类需实现inotifypropertychanged接口。

  • 第一节。

observablecollection和list对比:observablecollection更耗性能;observablecollection实现了inotifycollectionchanged、inotifypropertychanged接口,集合里每一条数据增删,都能触发改变。

  • 第二节。

bindingmode的onetime、oneway、twoway:onetime性能较高,字段只需一次性设置则最好设置bindingmode为onetime。

  • 第三节。

属性触发器:当依赖属性的值改变时调用。

数据触发器:当.net普通属性的值改变时调用;监听其他控件的属性值改变时调用。

事件触发器:指定的路由事件启动一组动作,永无终止。

多触发器和多数据触发器:满足多个条件时,改变属性或行为。

  • 多触发器和多数据触发器。

控件模板:自定义控件的外观,相对style,可以实现更高程度的改变。

 数据模板:控制数据的显示方式。

面板模板:自定义存放item的容器,控制item的排序方式。

层级模板:针对层级数据结构设计,每一个层级上都可以做datatemplate。使用控件:treeviewitem、menuitem。