Атрибут mc: Ignorable

Указывает, какие префиксы пространства имен XML, встречающиеся в файле разметки, могут игнорироваться обработчиком XAML. Атрибут mc:Ignorable поддерживает совместимость разметки как для сопоставления пользовательского пространства имен, так и для управления версиями XAML.

Использование атрибутов XAML (один префикс)

<object
  xmlns:ignorablePrefix="ignorableUri"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="ignorablePrefix"...>
    <ignorablePrefix1:ThisElementCanBeIgnored/>
</object>

Использование атрибутов XAML (два префикса)

<object
  xmlns:ignorablePrefix1="ignorableUri"
  xmlns:ignorablePrefix2="ignorableUri2"
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="ignorablePrefix1 ignorablePrefix2"...>
    <ignorablePrefix1:ThisElementCanBeIgnored/>
</object>

Значения XAML

значение Описание
ignorablePrefix, ignorablePrefix1 и т. д. Любая допустимая строка префикса в каждой спецификации XML 1.0.
ignorableUri Любой допустимый универсальный код ресурса (URI) для обозначения пространства имен в каждой спецификации XML 1.0.
ThisElementCanBeIgnored Элемент, который может игнорироваться реализацией процессора XAML, если базовый тип не удается разрешить.

Замечания

Префикс пространства имен XML mc — это рекомендуемое соглашение о префиксе, используемое при сопоставлении пространства имен совместимости XAML http://schemas.openxmlformats.org/markup-compatibility/2006.

Элементы или атрибуты, в которых часть префикса имени элемента определена как mc:Ignorable, не приведет к ошибкам при обработке обработчиком XAML. Если этот атрибут не удалось разрешить в базовый тип или конструкцию программирования, этот элемент игнорируется. Обратите внимание, что игнорируемые элементы могут по-прежнему генерировать дополнительные ошибки синтаксического анализа для дополнительных требований к элементам, которые являются побочными эффектами отсутствия обработки этого элемента. Например, для модели содержимого конкретного элемента может потребоваться ровно один дочерний элемент, но если указанный дочерний элемент находился в префиксе mc:Ignorable, и указанный дочерний элемент не удалось разрешить в тип, обработчик XAML может вызвать ошибку.

mc:Ignorable применяется только к сопоставлениям пространств имен со строками идентификаторов. mc:Ignorable не применяется к сопоставлениям пространств имен в сборках, чтобы задать пространство имен и сборку CLR (или по умолчанию использовать текущий исполняемых файл в качестве сборки).

Если вы реализуете обработчик XAML, такая реализация не должна выдавать ошибки синтаксического анализа или обработки при разрешении типов для любого элемента или атрибута, квалифицированного префиксом, который определяется как mc:Ignorable. Однако реализация процессора по-прежнему может вызывать исключения, которые являются вторичным результатом сбоя загрузки или обработки элемента, например, как в примере с одним дочерним элементом, который мы приводили ранее.

По умолчанию обработчик XAML игнорирует содержимое в игнорируемом элементе. Однако можно указать дополнительный атрибут mc:ProcessContent Attribute, чтобы требовать непрерывной обработки содержимого в игнорируемом элементе следующим доступным родительским элементом.

В атрибуте можно указать несколько префиксов, используя один или несколько символов пробела в качестве разделителя, например: mc:Ignorable="ignore1 ignore2".

Пространство имен http://schemas.openxmlformats.org/markup-compatibility/2006 определяет другие элементы и атрибуты, которые не задокументированы в этой области пакета SDK. Дополнительные сведения см. в спецификации совместимости разметки XML.

См. также