x:XData 內建 XAML 類型
可讓您在 XAML 生產環境中放置 XML 數據島。 XAML 處理器不應將 x:XData
內的 XML 元素視為作用中預設 XAML 命名空間或任何其他 XAML 命名空間的一部分。
x:XData
可以包含任意格式正確的 XML。
XAML 物件專案使用方式
<x:XData>
<elementDataRoot>
[elementData]
</elementDataRoot>
</x:XData>
XAML 值
價值 | 描述 |
---|---|
elementDataRoot |
封閉式數據島的單一根元素。 對於大多數最終取用者,沒有單一根目錄的 XML 會被視為無效。 特別是,如果 x:XData 是 WPF 的 XML 數據源,或是許多其他使用 XML 來源進行數據系結的技術,則需要單一根目錄。 |
[elementData] |
自選。 表示 XML 資料的 XML。 任何數目的專案都可以包含為項目數據,而巢狀專案可以包含在其他元素中;不過,會套用 XML 的一般規則。 |
言論
x:XData
物件內的 XML 元素可以重新宣告數據中包含 XMLDOM 的所有可能命名空間和前置詞。
在 .NET XAML Services 中,可以透過 XData 類別,以程式設計方式存取 XML 數據和 x:XData
內部 XAML 類型。
WPF 使用方式注意事項
x:XData
物件主要用於 XmlDataProvider的子物件,或者,做為 XmlDataProvider.XmlSerializer 屬性的子物件(在 XAML 中,這通常以屬性元素語法表示)。
數據通常應該重新定義數據島內的基底 XML 命名空間,以成為新的預設 XML 命名空間(設定為空字串)。 對於簡單的數據島來說,這是最簡單的方法,因為用來參考和系結至數據的 XPath 表達式可以避免包含前置詞。 更複雜的數據島可能會定義數據的多個前置詞,並使用根目錄中 XML 命名空間的特定前置詞。 在此情況下,所有 XPath 表達式參考都應該包含適當的命名空間對應前置詞。 如需詳細資訊,請參閱 資料系結概觀。
在技術上,x:XData
可作為類型 IXmlSerializable之任何屬性的內容。 不過,XmlDataProvider.XmlSerializer 是唯一突出的實作。