在 XAML 生产中开启 XML 数据岛的放置。 x:XData 中的 XML 元素不应由 XAML 处理器处理,就像它们属于作用的默认 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 的所有可能的命名空间和前缀。
通过 XData 类,对 XML 数据和 x:XData 内在 XAML 类型的编程访问可能存在于 .NET Framework XAML 服务中。
WPF 用法说明
x:XData 对象主要用作 XmlDataProvider 的子对象,或者用作 XmlDataProvider.XmlSerializer 属性的子对象(在 XAML 中,通常用属性元素语法表示)。
通常,数据应将数据岛内的基 XML 命名空间重新定义为新的默认 XML 命名空间(设置为空字符串)。 对于简单数据岛,这是最容易的方法,因为用于引用和绑定到数据的 XPath 表达式可以避免包含前缀。 较为复杂的数据岛可能选择为数据定义多个前缀,并为根级别的 XML 命名空间使用一个特定的前缀。 在此情况下,所有 XPath 表达式引用都应包含相应的命名空间映射前缀。 有关更多信息,请参见 数据绑定概述。
通常,x:XData 可用作 IXmlSerializable 类型的任何属性的内容。 但是,XmlDataProvider.XmlSerializer 是唯一突出的实现。