Поделиться через


Сущности знаков 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.

См. также