Сущности знаков XML и XAML
XAML использует сущности знаков, определенные в XML для специальных знаков. В этом разделе описываются некоторые особые сущности знаков и общие вопросы, связанные с другими концепциями XML в XAML.
Сущности знаков и проблемы экранирования спецсимволов, уникальные для XAML
В разметке XAML, как правило, используются те же сущности символов и последовательности escape-символов, которые определены в XML.
Главной особенностью является то, что фигурные скобки ({ и }) в XAML имеют значение, так как эти знаки информируют обработчик XAML о том, что последовательность знаков, заключенная в фигурные скобки, должна интерпретироваться как расширение разметки. Дополнительные сведения о расширениях разметки см. в разделе Общие сведения о расширениях разметки для XAML.
Однако можно по-прежнему отобразить фигурные скобки как символы литерала с помощью escape-последовательности, которая является особенностью XAML, а не XML. Дополнительные сведения см. в разделе Escape-последовательность/расширение разметки {}.
Обратите внимание, что обратная косая черта (\) не требует 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 Framework не используются никакие инструкции по обработке. Другие существующие платформы, использующие XAML, также не используют инструкции по обработке из XAML.
См. также
Ссылки
Escape-последовательность/расширение разметки {}
Основные понятия
Общие сведения о языке XAML (WPF)