XAML 固有数据类型
用于 Windows 运行时的 XAML 为多种数据类型提供了语言级支持,这些类型是公共语言运行时 (CLR) 和其他编程语言(例如 C++)中的常用原语。
XAML 固有数据类型在使用上的最大共同点体现于资源在 XAML 资源词典中定义时。 此时你可以定义常数,例如用于多个值的数字。 或者,你也可能使用通过布尔值或字符串构建动画的情节提要动画,随后还需一个用于表示该布尔值或字符串的 XAML 对象元素,以填写 ObjectAnimationUsingKeyFrames 定义的关键帧。 Windows 运行时默认 XAML 模板同时采用这两种技术。
用于 Windows 运行时的 XAML 提供了对以下类型的语言级支持。
XAML 原语 | 说明 |
---|---|
x:Boolean | 对于 CLR 支持,对应于 Boolean。 XAML 分析 x:Boolean 的值时区分大小写。 请注意,“x:Bool”不是可接受的替代原语。 |
x:String | 对于 CLR 支持来说,原语对应于 String。 对字符串的编码默认采用包围 XML 编码。 |
x:Double | 对于 CLR 支持,对应于 Double。 除了数字值,x:Double 的文本语法支持令牌“NaN”,这是将布局行为的“Auto”存储为资源值的方式。 对这些令牌的处理区分大小写。 你可以使用科学计数法,例如将 1,000,000 记为“1+E06”。 |
x:Int32 | 对于 CLR 支持,对应于 Int32。 x:Int32 被视为带有符号,你可以为负整数包含减号(“-”)。 在 XAML 中,文本语法中缺少符号表示有符号正值。 |
这些 XAML 语言原语一般是在 XAML 中定义使用 x: 前缀的对象元素的唯一情形。 所有其他 XAML 语言特性通常以属性或标记扩展的形式使用。
注意 根据惯例,我们给出了 XAML 语言原语和所有其他 XAML 语言元素,包括“x:”前缀。 这是 XAML 语言元素在实际标记中的典型用法。 XAML 文档和 XAML 规范中都采用了这一惯例。
其他 XAML 原语
XAML 2009 规范还介绍了其他 XAML 语言级原语,例如 x:Uri 和 x:Single。 除本节表格中所列项目外,适用于 Windows 运行时的 XAML 当前不支持其他 XAML 词汇表或 XAML 2009 规格所定义的 XAML 语言原语。
注意 日期和时间(使用 DateTime 或 DateTimeOffset、TimeSpan 或 System.TimeSpan 的属性)不可使用 XAML 原语设置。 总体而言,这些属性根本不可以采用 XAML 设置,因为 Windows 运行时 XAML 分析程序中没有用于日期和时间的从字符串转换的默认行为。 若要获取任何日期和时间属性的初始化值,必须使用在页面或元素加载时运行的代码隐藏文件。