Dela via


x:XData Inbyggd XAML-typ

Möjliggör placering av XML-dataöar i en XAML-produktion. XML-element i x:XData ska inte behandlas av XAML-processorer som om de är en del av det agerar standard-XAML-namnområdet eller något annat XAML-namnområde. x:XData kan innehålla godtyckligt välformulerad XML.

Användning av XAML-objektelement

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

XAML-värden

Värde Beskrivning
elementDataRoot Det enda rotelementet i den omslutna dataön. För de flesta slutliga konsumenter anses XML som inte har en enda rot vara ogiltig. I synnerhet krävs en enda rot om x:XData är avsedd som en XML-datakälla för WPF eller många andra tekniker som använder XML-källor för databindning.
[elementData] Valfri. XML som representerar XML-data. Valfritt antal element kan innehållas eftersom elementdata och kapslade element kan finnas i andra element. De allmänna reglerna för XML gäller dock.

Anmärkningar

XML-elementen i ett x:XData-objekt kan deklarera alla möjliga namnområden och prefix för den xmldom som innehåller i data.

Programmeringsåtkomst till XML-data och den x:XData inbyggda XAML-typen är möjlig i .NET XAML Services via XData-klassen.

WPF-användningsanteckningar

Det x:XData objektet används främst som ett underordnat objekt i en XmlDataProvider, eller alternativt som underobjekt för egenskapen XmlDataProvider.XmlSerializer (i XAML uttrycks detta vanligtvis i egenskapselementsyntax).

Data bör vanligtvis omdefiniera det grundläggande XML-namnområdet i dataön så att de är ett nytt XML-standardnamnområde (inställt på en tom sträng). Detta är enklast för enkla dataöar eftersom de XPath uttryck som används för att referera till och binda till data kan undvika att prefix inkluderas. Mer komplexa dataöar kan definiera flera prefix för data och använda ett specifikt prefix för XML-namnområdet i roten. I det här fallet bör alla XPath uttrycksreferenser innehålla lämpligt namnområdesmappat prefix. Mer information finns i Översikt över databindning.

Tekniskt sett kan x:XData användas som innehåll för alla egenskaper av typen IXmlSerializable. Men XmlDataProvider.XmlSerializer är det enda framträdande genomförandet.

Se även