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,效果。

相关推荐
上海物联网15 小时前
Prism Regions-自定义区域适配器实现开发者将任意 WPF 控件转换为可动态加载视图的区域容器
面试·wpf
Aevget1 天前
DevExpress WPF中文教程:Data Grid - 如何绑定到有限制的自定义服务(四)?
wpf·界面控件·devexpress·ui开发·.net 10
棉晗榜2 天前
wpf DataGrid控制列是否显示,DataGrid列不会触发Visibility的转换器
wpf
超级种码2 天前
Redis:Redis高可用——副本、哨兵和集群
数据库·redis·wpf
棉晗榜2 天前
wpf给Border添加闪烁边框
wpf
Derrick_itRose2 天前
DevExpress笔记WPF(2)Data Editors and Controls(基础编辑器)
笔记·编辑器·wpf
He BianGu2 天前
【笔记】WPF的Binding中AsyncState的使用方式
笔记·wpf
曹天骄2 天前
Cloudflare KV 使用教程(基于 Wrangler 项目)
wpf
摘星编程3 天前
Flutter for OpenHarmony 实战:Dialog 对话框详解
flutter·wpf
ou.cs3 天前
WPF TreeView 自动展开所有节点:附加行为(Attached Behavior)保姆级实现教程
c#·.net·wpf