Systeminterner x:XData-XAML-Typ

Ermöglicht die Platzierung von XML-Dateninseln in einer XAML-Produktion. Die in x:XData enthaltenen XML-Elemente sollten von den XAML-Prozessoren nicht so behandelt werden, als ob sie Teil des aktuellen Standard-XAML-Namensraums oder eines anderen XAML-Namensraums wären. x:XData kann beliebige wohlgeformte XML enthalten.

Verwendung von XAML-Objektelementen

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

XAML-Werte

Wert Beschreibung
elementDataRoot Das einzelne Stammelement der eingeschlossenen Dateninsel. Für die meisten Verbraucher gilt XML, die nicht über einen einzigen Stamm verfügen, als ungültig. Insbesondere ist eine einzige Wurzel erforderlich, wenn die x:XData als XML-Datenquelle für WPF oder viele andere Technologien gedacht ist, die XML-Quellen für die Datenbindung verwenden.
[elementData] Optional. Ein XML, das die zu ladenden XML-Daten darstellt. Eine beliebige Anzahl von Elementen kann als Elementdaten und geschachtelte Elemente in anderen Elementen enthalten sein; Die allgemeinen Regeln von XML gelten jedoch.

Hinweise

Die XML-Elemente innerhalb eines x:XData-Objekts können alle möglichen Namespaces und Präfixe des enthaltenen XMLDOM innerhalb der Daten erneut deklarieren.

Der programmgesteuerte Zugriff auf XML-Daten und der x:XData systeminterne XAML-Typ ist in .NET XAML Services über die XData-Klasse möglich.

Hinweise zur WPF-Verwendung

Das x:XData-Objekt wird hauptsächlich als untergeordnetes Objekt eines XmlDataProvider, oder alternativ als untergeordnetes Objekt der XmlDataProvider.XmlSerializer-Eigenschaft verwendet (in XAML wird dies in der Regel in der Eigenschaftenelementsyntax ausgedrückt).

Die Daten sollten normalerweise den Basis-XML-Namespace innerhalb der Dateninsel neu definieren, um ein neuer XML-Standardnamespace zu sein (auf eine leere Zeichenfolge festgelegt). Dies ist am einfachsten für einfache Dateninseln, da die XPath-Ausdrücke, die zum Verweisen und Binden an die Daten verwendet werden, die Einbeziehung von Präfixen vermeiden können. Komplexere Dateninseln können mehrere Präfixe für die Daten definieren und ein bestimmtes Präfix für den XML-Namespace im Stammverzeichnis verwenden. In diesem Fall sollten alle XPath-Ausdrucksverweise das entsprechende Namespacezuordnungspräfix enthalten. Weitere Informationen finden Sie unter Übersicht über Datenbindung.

x:XData kann technisch gesehen als Inhalt einer beliebigen Eigenschaft des Typs IXmlSerializable. Allerdings ist XmlDataProvider.XmlSerializer die einzige bekannte Implementierung.

Weitere Informationen