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

相关推荐
beyond谚语1 天前
第一章 WPF概述
wpf
necessary6532 天前
从工行“余额归零”事件看CAP定理:当金融系统在一致性与可用性之间做出选择
分布式·金融·wpf·可用性测试
棉晗榜2 天前
WPF隐藏控件后,怎么让其上部的控件空间自动撑高
wpf
壹佰大多3 天前
【Redisson分布式锁源码分析-3】
数据结构·分布式·mysql·spring·spring cloud·wpf·lua
LateFrames3 天前
以小白视角尝试 WPF / WinUI3 / MAUI / MAUI Blazor 构建 Windows 桌面程序
windows·wpf·maui·mauiblazor·winui3
偶尔的鼠标人4 天前
Avalonia/WPF 打开子窗口,并且跨页面传值
c#·wpf·mvvm·avalonia
玖笙&4 天前
✨WPF编程进阶【6.1】:图形原则(附源码)
c++·c#·wpf·visual studio
lixy5794 天前
WPF检测网络状态切换
wpf
纸照片4 天前
WPF中为Button设置IsMouseOver和IsPressed事件中改变背景颜色不起作用
c#·.net·wpf
Aevget4 天前
DevExpress WPF中文教程:Data Grid - 如何使用虚拟源?(四)
ui·.net·wpf·devexpress·wpf控件