关于wpf:如何在后面的代码中将xml字符串加载到绑定到XML的XPath的数据绑定UI控件中?

关于wpf:如何在后面的代码中将xml字符串加载到绑定到XML的XPath的数据绑定UI控件中?

How to load an xml string in the code behind to databound UI controls that bind to the XPath of the XML?

我看到的每个示例都在xmldataprovider源中使用静态XML,然后将其用于使用XPath绑定对UI控件进行数据绑定。
想法是使用WPF UI编辑动态XML(开发人员在编码过程中已知的结构)。

有没有人找到一种方法来加载动态xml字符串(例如,在运行时从文件中加载它),然后将该xml字符串用作XmlDataprovider源?

代码段会很棒。

更新:为了更加清楚,
假设我要加载从Web服务调用中收到的xml字符串。 我知道xml的结构。 因此,我将其数据绑定到WPF窗口上的WPF UI控件。 如何使这项工作? Web上的所有示例都在XmlDataProvider节点的XAML代码中定义了整个XML。 这不是我想要的。 我想在代码背后使用xml字符串将数据绑定到UI控件。


这是一些我用来从磁盘加载XML文件并将其绑定到TreeView的代码。 为了简洁起见,我删除了一些常规测试。 示例中的XML是OPML文件。

1
2
3
4
5
6
7
8
9
10
XmlDataProvider provider = new XmlDataProvider();

if (provider != null)
{
  System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
  doc.Load(fileName);
  provider.Document = doc;
  provider.XPath ="/opml/body/outline";
  FeedListTreeView.DataContext = provider;
}

使用Web服务获取XML并从中创建XML文档,然后可以将xmlDataProvider的Source设置为从服务获取的XMLDocument。

我不是在带Visual Studio的PC上对其进行测试,但是您应该可以这样做。

正如您在问题中提到的那样:

1
2
3
4
1. Get XML from webservice
2. Convert XML String to XML Document
3. Set the XMLDataProvider.Document value to your XML Document
4. Bind that to your controls

推荐阅读

    字符串查找命令linux?

    字符串查找命令linux?,系统,字符串,工具,信息,文件,命令,字符,选项,文本,范

    linux命令替换字符串?

    linux命令替换字符串?,字符串,文件,批量,首次,数据,命令,内容,方法,用字,结

    linux绑定dns命令?

    linux绑定dns命令?,系统,地址,网络,服务,信息,名字,代码,管理,设备,数据,Linu

    linux怎么绑定命令?

    linux怎么绑定命令?,系统,软件,地址,工作,密码,命令,信息,检测,管理,状态,Lin

    linux拼接字符串命令?

    linux拼接字符串命令?,系统,工作,代码,工具,名称,信息,地址,时间,数据,命令,l

    linux设备加载命令?

    linux设备加载命令?,系统,设备,信息,电脑,第一,命令,文件,分区,磁盘,详细信

    linux网卡加载命令行?

    linux网卡加载命令行?,系统,地址,代码,网络,设备,电脑,名称,网卡,技术指标,

    添加字符串命令linux?

    添加字符串命令linux?,情况,名称,文件,位置,名字,地方,连续,信息,命令,内容,L

    linux绑定ip命令?

    linux绑定ip命令?,地址,系统,代码,网络,密码,服务,命令,信息,设备,工具,如何

    linux命令刷新加载?

    linux命令刷新加载?,系统,下来,工具,网上,命令,终端,环境变量,以下,文件,路

    加载linux内核的命令?

    加载linux内核的命令?,系统,信息,地址,电脑,发行,设备,简介,平台,发展,基础,l

    linux命令查找字符串?

    linux命令查找字符串?,工具,信息,命令,字符串,系统,工作,文件,范本,样式,文

    linux加载没有的命令?

    linux加载没有的命令?,系统,服务,工具,信息,设备,标准,工作,命令,检测,代码,

    加载变量的linux命令?

    加载变量的linux命令?,工具,系统,名称,环境变量,环境,命令,用户,文件,变量,

    linux模块化加载命令?

    linux模块化加载命令?,软件,系统,设备,代码,信息,环境,适当,资料,网上,电脑,

    linux命令加载模块?

    linux命令加载模块?,设备,系统,工具,检测,信息,模块,内核,文件,命令,杂项,lin

    linux7网卡绑定命令?

    linux7网卡绑定命令?,网络,系统,状态,地址,设备,信息,情况,网卡,模式,命令,Li

    linux命令字符串匹配?

    linux命令字符串匹配?,系统,工具,命令,字符串,灵活,状态,文件,文本,模式,管

    linux命令加载驱动?

    linux命令加载驱动?,官网,电脑,系统,材料,网络,软件,设备,地址,下来,服务,ope

    python字符串截取?

    python字符串截取?,代码,步长,位置,分析,字符串,字符,信息,灵活,数字,表示,在