Windows 运行时的 XAML 为公共语言运行时(CLR)和其他编程语言(如 C++)中经常使用的基元的多种数据类型提供语言级支持。
你将看到 XAML 内部数据类型用法的最常见位置是在 XAML 资源字典中定义资源时。 可以在那里定义常量,例如用于多个值的数字。 或者,可以使用一个以字符串或布尔值进行动画处理的情节提要动画,然后需要一个表示字符串或布尔值的 XAML 对象元素来填充 ObjectAnimationUsingKeyFrames 定义的关键帧。 Windows 运行时默认 XAML 模板使用这两种技术。
Windows 运行时的 XAML 为这些类型提供语言级支持。
| XAML 基元 | Description |
|---|---|
| x:Boolean | 对于 CLR 支持,对应于 布尔值。 XAML 将 x:Boolean 的值分析为不区分大小写。 请注意,“x:Bool”不是可接受的替代方法。 |
| x:String | 对于 CLR 支持,对应于 String。 字符串的编码默认为周围的 XML 编码。 |
| x:Double | 对于 CLR 支持,对应于 Double。 除了数值外,x:Double 的文本语法还允许使用标记“NaN”,这表示布局行为中的“Auto”可以作为资源值存储。 令牌被视为区分大小写。 可以使用科学表示法,例如“1+E06”。1,000,000 |
| 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 分析器对日期和时间没有默认的从字符串转换行为。 对于任何日期和时间属性的初始化值,您需要使用在页面或元素加载时执行的后台代码。