XAML 是派生自 XML 的可扩展应用程序标记语言。
在WPF 中 XAML 用来开发用户界面 继承了XML的Tag,Attribute等语法
、在WPF中,XAML运行在CLR(公共语言运行库,指一种运行时环境,CLR是.NET Framework的主要执行引擎。和java虚拟机类似)之上,但它不编译为IL,而是编译为BAML代码,在运行时会被解析成CLR类型(Types)。
元数据:为了使运行时环境可以向可操控代码提供服务,语言编译器需要产生一种元数据,它将提供在使用语言中的类型、成员、引用的信息。运行时环境使用元数据定位并载入类,在内存中展开对象实例,解决方法调用,产生本地代码,强制执行安全性,并建立运行时环境的边界。
基本语法:
1、Tag语法=对象元素(Object Elements)
每个标签即是一个对象元素,将被解析为一个WPF Framework(主要来自PresentationFramework.dll)中的类的实例。下面的代码就是一个对象元素,运行时会被解析为一个Button对象实例。
或写成
2、Attribute赋值语法
2.1 普通字符串赋值。下面代码给Button的Property和Event赋值。字符串将被通过包装好的TypeConverter来转换成对象。TypeConverter使用C#的Attribute技术来实现的。
2.2 标记扩展赋值。用花括号这种方式赋值就叫标记扩展赋值。常用的地方是在用到绑定和资源的时候。
2.3 属性元素赋值。有的时候简单字符串赋值不了的,就用属性元素赋值。
<Button.Content>aaa</Button.Content>
3、命名空间。
一般用在Root元素上(Application,Window,UserControl,Page,ResourceDictionary等)。如下例子,xmlns为引入命名空间的attribute。第一行xmlns是没有指定别名的,是默认命名空间,它指定的命名空间包含了微软提供所有的XAML控件的程序集。第二行xmlns别名是x,也是微软提供的命名空间,这里面主要包含了一些关于解析Xaml语言的程序集。第三行xmlns是自己引入的,开发人员自己写的控件等,可以通过命名空间这种方式引用到XAML文档来使用。
线性插值动画对象属性
from 动画从from 属性指定的值继续到正在进行动画处理的属性的基值或迁移动画的输出值,具体取决于迁移动画的配置方式
To 动画从进行动画处理的属性的基值或前动画的输出继续到To 属性指定的值。
by 动画从正在进行动画处理的属性的基值或前一动画的输出值继续到该值与by 属性指定值的和
:
duration 动画执行一次持续的时间长度,duration 的格式为 时:分:秒
动画播放控制属性
BeginTime 动画开始时间,默认单位是天,也可以指定为时:分:秒
repeatBehavior 用来声明动画重复次数,支持3种类型值:重复次数(格式–次数 +X