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 的所有可能的命名空间和前缀。
通过 XData 类,可以在 .NET XAML 服务中以编程方式访问 XML 数据和 x:XData
内部 XAML 类型。
WPF 用法注释
x:XData
对象主要用作 XmlDataProvider 的子对象,或者用作 XmlDataProvider.XmlSerializer 属性的子对象(在 XAML 中,这通常以属性元素语法表示)。
数据通常应将数据岛内的基本 XML 命名空间重新定义为新的默认 XML 命名空间(设置为空字符串)。 这对于简单的数据岛来说是最简单的,因为用于引用和绑定到数据的 XPath 表达式可以避免包含前缀。 更复杂的数据岛可能会为数据定义多个前缀,并对根目录中的 XML 命名空间使用特定前缀。 在这种情况下,所有 XPath 表达式引用都应包含适当的命名空间映射前缀。 有关详细信息,请参阅 数据绑定概述。
从技术上说,x:XData
可以用作 IXmlSerializable 类型的任何属性的内容。 但是,XmlDataProvider.XmlSerializer 是唯一突出的实现。