书本上的东西没有理解体会就不是自己的,理解体会了没有学以致用很快又会忘到爪哇国,先把看过的书记录在这里,以后忘记了还可以来看看。
1.XAML
Xaml是一种声明式的编程语言,是一种调用.Net的API的方式,在WPF应用程序中一般用它来生成界面。
在Xaml中为对象设置的事件处理程序总是在设置属性之后(Name属性除外,对象构造后立即设置)。
Xaml中有一种运行时根据字符串生成对象的表达方式叫做标记扩展(MarkupExtension)。
由于花括号(“{”和“}”)代表标记扩展,如果向输入“{”和“}”可以这样“{}{......}”。
Xaml中对象元素的子元素的解析规则:
- 如果该类型实现了IList接口,就为每个子元素调用IList.Add。
- 否则,如果该类型实现了IDictionary,就为每个子元素调用IDictionary.Add,使用x:key提供键值。
- 否则,如果父元素支持内容属性(System.Windows.Markup.ContentPropertyAttribute表示),而且子元素的类型与该内容属性是兼容的,就把子元素作为它的值。
- 否则,如果子元素是普通文本,且有类型转换器将子元素转换为父类型,则将子元素作为类型转换器的输入,将输出作为父对象的实例
- 否则,抛出一个异常。
在运行时加载和解析Xaml文件用XamlReader类。
在WPF目前的实现中,Xaml会被编译成Baml格式,然后链接进程序集中,与过程式代码关联起来。
时间: 2024-11-02 23:37:38