Tipo intrínseco x:XData (XAML)

Habilita o posicionamento de ilhas de dados XML em uma produção XAML. Os elementos XML dentro x:XData não devem ser tratados pelos processadores XAML como se fizessem parte do namespace XAML padrão de atuação ou de qualquer outro namespace XAML. x:XData pode conter XML arbitrário bem formado.

Uso de elemento Object do XAML

<x:XData>
  <elementDataRoot>
    [elementData]
  </elementDataRoot>
</x:XData>

Valores XAML

Valor Descrição
elementDataRoot O único elemento raiz da ilha de dados incluída. Para a maioria dos consumidores eventuais, o XML que não tem uma única raiz é considerado inválido. Em particular, uma única raiz é necessária se o x:XData for destinado como uma fonte de dados XML para WPF ou muitas outras tecnologias que usam fontes XML para associação de dados.
[elementData] Opcional. XML que representa os dados XML. Qualquer número de elementos pode ser contido como dados de elementos e elementos aninhados podem estar contidos em outros elementos; no entanto, as regras gerais do XML se aplicam.

Comentários

Os elementos XML dentro de um x:XData objeto podem redeclarar todos os namespaces e prefixos possíveis do XMLDOM que contém nos dados.

O acesso programático a dados XML e ao x:XData tipo XAML intrínseco é possível nos Serviços XAML do .NET por meio da XData classe.

Notas de uso do WPF

O x:XData objeto é usado principalmente como um objeto filho de um XmlDataProvider, ou, alternativamente, como o objeto filho da propriedade (em XAML, isso geralmente é expresso na sintaxe do elemento de XmlDataProvider.XmlSerializer propriedade).

Normalmente, os dados devem redefinir o namespace XML base dentro da ilha de dados para ser um novo namespace XML padrão (definido como uma cadeia de caracteres vazia). Isso é mais fácil para ilhas de dados simples porque as XPath expressões usadas para fazer referência e vincular aos dados podem evitar a inclusão de prefixos. As ilhas de dados mais complexas podem definir vários prefixos para os dados e usar um prefixo específico para o namespace XML na raiz. Nesse caso, todas as XPath referências de expressão devem incluir o prefixo mapeado de namespace apropriado. Para obter mais informações, consulte Visão geral de vinculação de dados.

Tecnicamente, x:XData pode ser usado como o conteúdo de qualquer propriedade do tipo IXmlSerializable. No entanto, XmlDataProvider.XmlSerializer é a única implementação proeminente.

Confira também