Partilhar via


x:XData Tipo XAML intrínseco

Permite 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 atuante ou de qualquer outro namespace XAML. x:XData pode conter XML arbitrário bem formado.

Uso do elemento de objeto XAML

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

Valores XAML

Valor Descrição
elementDataRoot O único elemento raiz da ilha de dados anexada. Para a maioria dos eventuais consumidores, o XML que não tem uma única raiz é considerado inválido. Em particular, uma única raiz é necessária se o x:XData se destina como uma fonte de dados XML para WPF ou muitas outras tecnologias que usam fontes XML para vinculaçã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 ser contidos em outros elementos; no entanto, aplicam-se as regras gerais do XML.

Comentários

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

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

Notas de uso do WPF

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

Os dados normalmente 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 expressões XPath usadas para fazer referência e vincular aos dados podem evitar a inclusão de prefixos. 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 referências de expressão XPath devem incluir o prefixo mapeado pelo namespace apropriado. Para obter mais informações, consulte Visão geral da 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.

Ver também