Sdílet prostřednictvím


x:XData – vnitřní typ XAML

Umožňuje umístění datových ostrůvků XML v produkčním prostředí XAML. Prvky XML v rámci x:XData by neměly být zpracovávány procesory XAML, jako by byly součástí fungujícího výchozího oboru názvů XAML nebo jakéhokoli jiného oboru názvů XAML. x:XData může obsahovat libovolný formát XML ve správném formátu.

Použití elementu objektu XAML

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

Hodnoty XAML

Hodnota Popis
elementDataRoot Jediný kořenový prvek ohraničovaného datového ostrůvku. U většiny konečných příjemců se kód XML, který nemá jediný kořen, považuje za neplatný. Konkrétně se vyžaduje jeden kořenový adresář, pokud je x:XData určen jako zdroj dat XML pro WPF nebo mnoho dalších technologií, které používají zdroje XML pro vazbu dat.
[elementData] Volitelný. XML, který představuje data XML. Libovolný počet prvků může být obsažen jako data prvku a vnořené prvky mohou být obsaženy v jiných prvcích; platí však obecná pravidla XML.

Poznámky

Elementy XML v rámci x:XData objektu mohou znovu deklarovat všechny možné obory názvů a předpony obsahující XMLDOM v rámci dat.

Programový přístup k datům XML a x:XData vnitřní typ XAML je možné v .NET XAML Services prostřednictvím XData třídy.

Poznámky k využití WPF

Objekt x:XData se primárně používá jako podřízený objekt XmlDataProvidernebo alternativně jako podřízený objekt vlastnosti XmlDataProvider.XmlSerializer (v JAZYCE XAML se obvykle vyjadřuje v syntaxi elementu property).

Data by obvykle měla předefinovat základní obor názvů XML v rámci datového ostrůvku jako nový výchozí obor názvů XML (nastavený na prázdný řetězec). To je nejjednodušší pro jednoduché datové ostrovy, protože výrazy XPath, které se používají k odkazování na data a jejich vazby, se můžou vyhnout zahrnutí předpon. Složitější datové ostrovy mohou definovat více předpon pro data a použít konkrétní předponu pro obor názvů XML v kořenovém adresáři. V tomto případě by všechny odkazy na výrazy XPath měly obsahovat odpovídající předponu mapovanou oborem názvů. Další informace naleznete v tématu Přehled datových vazeb.

Technicky vzato lze x:XData použít jako obsah libovolné vlastnosti typu IXmlSerializable. XmlDataProvider.XmlSerializer je však jedinou významnou implementací.

Viz také