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

相关推荐
LateFrames11 小时前
520 - 如何说晚安 (WPF)
c#·wpf·浪漫·ui体验
heimeiyingwang1 天前
【架构实战】日志体系ELK:集中化日志管理实践
elk·架构·wpf
CPU不够了1 天前
WPF 多选下拉+搜索过滤_wpf下拉选项增加搜索
wpf
FuckPatience1 天前
WPF 列表控件自动拉伸子元素的宽度
wpf
LCG元1 天前
【Go后端开发】从 0 到生产级:高性能分布式网关全实现 + 接口限流熔断降级实战
分布式·golang·wpf
枫叶林FYL2 天前
项目九:异步高性能爬虫与数据采集中枢 —— 基于 Crawl<sub>4</sub>AI 与 Playwright 的现代化数据采集平台 项目总览
爬虫·python·深度学习·wpf
她说彩礼65万2 天前
WPF 多值转换器
wpf
无心水2 天前
【分布式利器:金融级】金融级分布式架构开源框架全景解读
人工智能·分布式·金融·架构·开源·wpf·金融级框架
她说彩礼65万2 天前
WPF 转换器
wpf
WPF工业上位机3 天前
匠心研智造,同心赴新程-WPF硬件通讯之串口&Socket
wpf