Atributo mc:Ignorable

Especifica quais prefixos de namespace XML encontrados em um arquivo de marcação podem ser ignorados por um processador XAML. O mc:Ignorable atributo oferece suporte à compatibilidade de marcação tanto para mapeamento de namespace personalizado quanto para controle de versão XAML.

Uso do atributo XAML (prefixo único)

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

Uso do atributo XAML (dois prefixos)

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

Valores XAML

Valor Descrição
ignorablePrefix, ignorablePrefix1, etc. Qualquer cadeia de caracteres de prefixo é válida, conforme a especificação de XML 1.0.
ignorableUri Qualquer URI válido para designar um namespace, conforme a especificação XML 1.0.
ThisElementCanBeIgnored Um elemento que pode ser ignorado por implementações de processador XAML (Extensible Application Markup Language), se o tipo subjacente não puder ser resolvido.

Comentários

O mc prefixo de namespace XML é a convenção de prefixo recomendada a ser usada ao mapear o namespace http://schemas.openxmlformats.org/markup-compatibility/2006de compatibilidade XAML.

Os elementos ou atributos em que a parte do prefixo do nome do elemento é identificada como mc:Ignorable não gerarão erros quando processados por um processador XAML. Se esse atributo não puder ser resolvido para um tipo subjacente ou constructo de programação, esse elemento será ignorado. No entanto, observe que elementos ignorados ainda podem gerar erros de análise adicionais para requisitos de elementos adicionais que são efeitos colaterais do elemento não estar sendo processado. Por exemplo, um modelo de conteúdo de elemento específico pode exigir exatamente um elemento filho, mas se o elemento filho especificado estiver em um prefixo e o elemento filho especificado não puder ser resolvido para um tipo, o processador XAML poderá gerar um mc:Ignorable erro.

mc:Ignorable aplica-se somente a mapeamentos de namespace para cadeias de caracteres de identificador. mc:Ignorable não se aplica a mapeamentos de namespace em assemblies, que especificam um namespace CLR e um assembly (ou padrão para o executável atual como o assembly).

Se você estiver implementando um processador XAML, sua implementação do processador não deverá gerar erros de análise ou processamento na resolução de tipos para qualquer elemento ou atributo qualificado por um prefixo identificado como mc:Ignorable. Contudo, a implementação do processador pode, ainda assim, gerar exceções que são um resultado secundário da falha de um elemento ao carregar ou ser processado, como no exemplo de filho único fornecido anteriormente.

Por padrão, um processador XAML ignorará o conteúdo dentro de um elemento ignorado. No entanto, você pode especificar um atributo adicional, Atributo mc:ProcessContent, para exigir o processamento de conteúdo contínuo dentro de um elemento ignorado pelo próximo elemento pai disponível.

Vários prefixos podem ser especificados no atributo, usando um ou mais caracteres de espaço em branco como separador, por exemplo: mc:Ignorable="ignore1 ignore2".

O http://schemas.openxmlformats.org/markup-compatibility/2006 namespace define outros elementos e atributos que não estão documentados nessa área do SDK. Para obter mais informações, consulte Especificação de compatibilidade de marcação XML.

Confira também