Сущности знаков XML и XAML
XAML использует сущности символов, определенные в XML для специальных символов. В этом разделе описываются некоторые особые сущности знаков и общие вопросы, связанные с другими концепциями XML в XAML.
Сущности символов и проблемы экранирования, уникальные для XAML
Разметка XAML обычно использует же сущности символов и escape-последовательности, которые определены в XML.
Главной особенностью является то, фигурные скобки ({ и }) в XAML имеют значение, так как эти они информируют обработчика XAML о том, что последовательность символов, заключенных в фигурные скобки, должна интерпретироваться как расширение разметки. Дополнительные сведения о расширениях разметки см. в разделе Markup Extensions for XAML Overview.
Однако можно по-прежнему отобразить фигурные скобки как литеральные символы, используя escape-последовательности, определенные в языке XAML, а не в XML. Дополнительные сведения см. в разделе {} Escape Sequence — Расширение разметки.
Обратите внимание, что обратная косая черта (\) не требует escape-последовательности при обработке в виде строки.
Сущности символов XML
Как упоминалось ранее, большинство сущностей символов и escape-последовательностей, которые обычно используются для написания разметки XAML, определяются XML. Этот раздел не содержит полного списка этих сущностей. Подробные сведения о них можно найти во внешней документации, например в спецификациях XML. Однако для удобства в этом разделе перечислены некоторые из определенных сущностей символов XML, которые обычно используются в разметке XAML.
Символ | Объект | Примечания. |
---|---|---|
& (амперсанд) | & | Должен использоваться для значений атрибутов и содержимого элемента. |
> (больше символа) | > | Необходимо использовать для значения атрибута, но > допустимо в качестве содержимого элемента, если < он не предшествует. |
< (меньше символа) | < | Должно использоваться для значения атрибута, но < допустимо в качестве содержимого элемента, если > оно не соответствует ему. |
"(прямая кавычка) | " | Должен использоваться для значения атрибута, но прямая кавычка (") допустима в качестве содержимого элемента. Обратите внимание, что значения атрибутов могут быть заключены в прямые одиночные кавычки (') или прямые двойные кавычки (""). Первый символ определяет оболочку значения атрибута, а альтернативный знак кавычек можно затем использовать в качестве литерала в значении. |
' (одиночная прямая кавычка) | ' | Должен использоваться для значения атрибута, но прямая одиночная кавычка (') допустима в качестве содержимого элемента. Обратите внимание, что значения атрибутов могут быть заключены в прямые одиночные кавычки (') или прямые двойные кавычки (""). Первый символ определяет оболочку значения атрибута, а альтернативный знак кавычек можно затем использовать в качестве литерала в значении. |
(сопоставления цифровых символов) | &#[целое число]; или &#x*[шестнадцатеричное]*; | XAML поддерживает сопоставления числовых символов с активной кодировкой. |
(неразрывный пробел) | (при условии, что кодировка UTF-8) | Для элементов потокового документа или элементы, которые принимают текст, например TextBox в WPF, неразрывные пробелы не нормализуются в разметке даже для xml:space="default" . (Дополнительные сведения см. в разделе Обработка пробелов в XAML.) |
Формат комментариев XML
XAML использует формат комментариев XML: начало комментария — <!--
, конец комментария — -->,
, при этом последовательность --
не должна входить в комментарий.
Инструкции по обработке XML
XAML обрабатывает инструкции по обработке XML в соответствии со спецификациями XML, в которых указано, что инструкции должны передаваться. Обработка XAML в службах XAML .NET не использует никаких инструкций по обработке. Другие существующие платформы, использующие XAML, также не применяют инструкции по обработке из XAML.
См. также
.NET Desktop feedback