WPF之XmlDataProvider使用

1,WPF XAML支持数据提供(DataProvider),但其提供的数据只供查看不可进行修改,删除,添加等。

  • 数据提供者都继承自System.Windows.DataSourceProvider类,目前,WPF只提供两个数据提供者ObjectDataProvider,XmlDataProvider。

2,通过Xmldataprovider ,Xaml可直接读取xml文件中的数据,并可作为数据源绑定给相应的控件。

XML 复制代码
 <Window.Resources>
        <XmlDataProvider x:Key="provider" Source="Store.xml" XPath="/Products"></XmlDataProvider>
    </Window.Resources>
  • Source="Store.xml":数据源xml文件路径(相对路径)。
  • XPath="/Products":/:表示根节点,"/Products":表示根节点为Produces的节点。

3,作为数据源直接绑定到相应的控件。

XML 复制代码
 <ListBox ItemsSource="{Binding Source={StaticResource provider}, XPath=Product}" DisplayMemberPath="ModelName" VirtualizingPanel.ScrollUnit="Pixel" VirtualizingStackPanel.VirtualizationMode="Recycling" x:Name="listBox01" Margin="5" BorderBrush="SaddleBrown" BorderThickness="1"></ListBox>
  • 注意事项:有别于一般绑定使用的Path这里使用的是XPath。

4,效果。

相关推荐
武藤一雄11 小时前
.NET 中常见计时器大全
microsoft·微软·c#·.net·wpf·.netcore
MarkHD15 小时前
车辆TBOX科普 第70次 AUTOSAR Adaptive、容器化与云原生的融合革命
云原生·wpf
极客智造15 小时前
WPF Behavior 实战:自定义 InvokeCommandAction 实现事件与命令解耦
wpf
L、21815 小时前
Flutter 与 OpenHarmony 深度集成:构建分布式多端协同应用
分布式·flutter·wpf
布伦鸽15 小时前
C# WPF -MaterialDesignTheme 找不到资源“xxx“问题记录
开发语言·c#·wpf
小二·1 天前
MyBatis基础入门《十五》分布式事务实战:Seata + MyBatis 实现跨服务数据一致性
分布式·wpf·mybatis
helloworddm2 天前
UnregisterManyAsync
wpf
军训猫猫头2 天前
3.NModbus4 长距离多设备超时 C# + WPF 完整示例
c#·.net·wpf·modbus
Aevget2 天前
DevExpress WPF中文教程:Data Grid - 如何绑定到有限制的自定义服务(一)?
ui·.net·wpf·devexpress·ui开发·wpf界面控件
Macbethad2 天前
半导体设备工厂自动化软件技术方案
wpf·智能硬件