XML 字符实体和 XAML

XAML 使用 XML 中为特殊字符定义的字符实体。 本主题介绍 XAML 中其他 XML 概念的一些特定字符实体和一般注意事项。

字符实体和转义 XAML 特有的问题

XAML 标记通常使用相同的字符实体和在 XML 中定义的转义序列。

主要例外是大括号 ({ 和 }) 在 XAML 中具有意义,因为这些字符通知 XAML 处理器大括号括起来的字符序列必须解释为标记扩展。 有关标记扩展的详细信息,请参阅 XAML 的标记扩展概述

但是,你仍然可以通过使用 XAML 而不是 XML 的转义序列将大括号显示为文本字符。 有关详细信息,请参阅 {} 转义序列 - 标记扩展

请注意,反斜杠 (\) 在作为字符串处理时不需要转义序列。

XML 字符实体

如前所述,通常用于编写 XAML 标记的大多数字符实体和转义序列由 XML 定义。 本主题不提供这些实体的完整列表;可以在外部文档中找到实体的详细参考,例如在 XML 规范中。 但是,为方便起见,本主题列出了一些通常在 XAML 标记中使用的特定 XML 字符实体。

字符 实体 笔记
& (与) &和 必须同时用于属性值和元素内容。
>(大于字符) > 必须用于属性值,但只要 < 在元素之前的内容,> 是可以接受的。
<(小于字符) < 必须用于属性值,但只要 > 不遵循它,< 就可以接受该元素的内容。
“(直引号) " 必须用于属性值,但作为元素的内容,可以接受直引号(“)。 请注意,属性值可以用单引号(')或直引号括起来(“):无论出现哪个字符,首先定义属性值机箱,然后备用引号就可以用作值中的文本。
'(单直引号) ' 必须用于属性值,但单个直引号 (') 作为元素的内容是可接受的。 请注意,属性值可以用单引号(')或直引号括起来(“):无论出现哪个字符,首先定义属性值机箱,然后备用引号就可以用作值中的文本。
(数字字符映射) &#[integer];或 &#x*[hex]*; XAML 支持将数字字符映射映射到处于活动状态的编码中。
(非中断空间)  (假设 UTF-8 编码) 对于流文档元素或采用文本(如 WPF TextBox)的元素,即使对于 xml:space="default",非中断空格也不会规范化标记。 (有关详细信息,请参阅 XAML中的 空白处理。

XML 注释格式

XAML 使用 XML 注释格式:注释的开头是 <!--,注释的末尾是 -->,,序列 -- 不得在注释中发生。

XML 处理指令

XAML 根据 XML 规范处理 XML 处理指令,这些指令必须传递。 .NET XAML 服务中的 XAML 处理不使用任何处理指令。 使用 XAML 的其他现有框架也不使用 XAML 中的处理指令。

另请参阅