英文版原文链接:http://www.infragistics.com/help/topic/e5f07b51-ee2d-4a33-aaac-2f43cffff327

所使用的控件版本为:Infragistics4.Web.v12.2

在页面上拖拽3个控件:ScriptManager,WebDataTree(第三方控件),XmlDataSource,按如下设置:

HTML:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Tree.aspx.cs" Inherits="WebStudy.Tree" %>
<%@ Register assembly="Infragistics4.Web.v12.2, Version=12.2.20122.2054, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb" namespace="Infragistics.Web.UI.NavigationControls" tagprefix="ig" %>

<head>
<link href="Style.css" rel="stylesheet" type="text/css" />
</head>

<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<ig:WebDataTree ID="WebDataTree1" runat="server"
DataSourceID="XmlDataSource1"
Height="100%"
Width="100%"
Style="float: left; margin-left: 2px"
InitialExpandDepth="0"
EnableConnectorLines="false" StyleSetName="IG">
<DataBindings>
<%--第一层节点绑定,DataMember 节点名字--%>
<ig:DataTreeNodeBinding DataMember="Customer" TextField="CustomerName" ValueField="CustomerID " />
<%-- 第二层节点绑定,DataMember 节点名字 --%>
<ig:DataTreeNodeBinding DataMember="Order" TextField="OrderID" ValueField="OrderID " />
<%-- 第三层节点绑定,DataMember 节点名字 --%>
<ig:DataTreeNodeBinding DataMember="OrderDetail" TextField="ProductName" ValueField="ProductID " />
</DataBindings>
</ig:WebDataTree>
<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/test.xml">
</asp:XmlDataSource>
</form>

所使用到的XML文件格式如下:

<?xml version="1.0" encoding="utf-8" ?>
<Customers>
<Customer CustomerID="ALFKI" CustomerName="A" ImageUrl="NANETLarge.jpg">
<Order OrderID="1024" ImageUrl="NASilLarge.jpg">
<OrderDetail ProductID="1" ProductName="Chocolate" Quantity="10" ImageUrl="NAWinLarge.jpg" />
<OrderDetail ProductID="2" ProductName="Apples" Quantity="20" ImageUrl="NAWpfLarge.jpg" />
<OrderDetail ProductID="3" ProductName="Peanuts" Quantity="30" ImageUrl="NAWinLarge.jpg" />
</Order>
<Order OrderID="1029" ImageUrl="NAAsLarge.jpg">
<OrderDetail ProductID="10" ProductName="Flour" Quantity="100" ImageUrl="NAWinLarge.jpg" />
</Order>
</Customer>
<Customer CustomerID="BLONP" CustomerName="B" ImageUrl="TAWinLarge.jpg">
<Order OrderID="2021" ImageUrl="NASilLarge.jpg">
<OrderDetail ProductID="4" ProductName="Rigatoni" Quantity="30" ImageUrl="NAWpfLarge.jpg"/>
<OrderDetail ProductID="5" ProductName="Ricotta" Quantity="10" ImageUrl="NAWinLarge.jpg" />
</Order>
</Customer>
<Customer CustomerID="WOLZA" CustomerName="C" ImageUrl="NAIcoLarge.jpg">
<Order OrderID="2029" ImageUrl="NASilLarge.jpg">
<OrderDetail ProductID="6" ProductName="Hot Dogs" Quantity="45" ImageUrl="NAWinLarge.jpg" />
<OrderDetail ProductID="7" ProductName="Brown Rice" Quantity="12" ImageUrl="NAWpfLarge.jpg"/>
<OrderDetail ProductID="8" ProductName="Ketchup" Quantity="100" ImageUrl="NAWinLarge.jpg"/>
<OrderDetail ProductID="9" ProductName="Mustard" Quantity="100" ImageUrl="NAWpfLarge.jpg" />
</Order>
</Customer>
</Customers>

---------------------------------------------------------------------

效果图:

使用递归算法直接绑定数据也是可行的。

参考另一篇:http://www.cnblogs.com/hiflora/p/3158793.html

WebDataTree 使用XML做数据源绑定数据的更多相关文章

  1. java分享第十八天-02( java结合testng,利用XML做数据源的数据驱动)

    testng的功能很强大,利用@DataProvider可以做数据驱动,数据源文件可以是EXCEL,XML,YAML,甚至可以是TXT文本.在这以XML为例:备注:@DataProvider的返回值类 ...

  2. java结合testng,利用XML做数据源的数据驱动示例

    testng的功能很强大,利用@DataProvider可以做数据驱动,数据源文件可以是EXCEL,XML,YAML,甚至可以是TXT文本.在这以XML为例: 备注:@DataProvider的返回值 ...

  3. 从xml文件中绑定数据到DropDownList控件上

    参考了2篇文章: http://www.cnblogs.com/JuneZhang/archive/2010/11/23/1885671.html http://blog.sina.com.cn/s/ ...

  4. Listbox的操作,数据源变化时要及时更新listbox要先把数据源置空,在给数据源绑定数据

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  5. List<T>做数据源绑定的问题

    List<C_Pinpai> lc;// = new List<C_Pinpai>(); private void BindGrid() { //if (lc.Count &g ...

  6. PB中用oracle的存储过程返回记录集做数据源来生成数据窗口,PB会找不到此存储过程及不能正常识别存储过程的参数问题(转)

    (转)在PB中用oracle的存储过程返回记录集做数据源来生成数据窗口 首先oracle的存储过程写法与MSSQL不一样,差别比较大. 如果是返回数据集的存储过程则需要利用oracle的包来定义游标. ...

  7. Spinner 通过XML形式绑定数据时 无法从String.xml中读取数组

    在android应用程序中,通过XML形式给Spinner绑定数据,如果把数组放在系统的string.xml文件里,那么就有可能在运行时无法找到,导致程序异常结束,解决方法是自建一个XML文件来存放数 ...

  8. C# 中DataGridView 绑定List<T>做数据源的操作问题

    若想将 List<T>作为DataGridView的数据源,然后后续还想继续操作的话,需要将List<T>赋值给BindingList对象, 然后直接将BindingList赋 ...

  9. Android之ListView性能优化——一行代码绑定数据——万能适配器

    如下图,加入现在有一个这样的需求图,你会怎么做?作为一个初学者,之前我都是直接用SimpleAdapter结合一个Item的布局来实现的,感觉这样实现起来很方便(基本上一行代码就可以实现),而且也没有 ...

随机推荐

  1. Vmware10.0 安装系统以及使用笔记

    1.安装教程参考 大致分为:vmware10.0安装-------建立虚拟机---------设置虚拟机---------启动虚拟机(IOS安装)---------安装系统---------安装vmt ...

  2. Sqlserver2008日志压缩

    SqlServer2008日志压缩语句如下: USE [master] GO ALTER DATABASE DBName SET RECOVERY SIMPLE WITH NO_WAIT GO ALT ...

  3. 2013 Multi-University Training Contest 2

    HDU-4611 Balls Rearrangement 题意:具体题意不大清楚,最后要处理一个这样的表达式:sum{ |i % a - i % b| },0 <= i < N 的取值很大 ...

  4. iOS - UITextView

    前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UITextView : UIScrollView <UITextInput> @available(i ...

  5. iOS - UILabel

    前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UILabel : UIView <NSCoding> @available(iOS 2.0, *) p ...

  6. PHP面向对象(OOP)编程入门教程————如何实例化对象?

    我们上面说过面向对象程序的单位就是对象,但对象又是通过类的实例化出来的,既然我们类会声明了,下一步就是实例化对象了. 当定义好类后,我们使用new关键字来生成一个对象. $对象名称 = new 类名称 ...

  7. Git 的origin和master分析 push/diff/head(转)

    1.origin/master : 一个叫 origin 的远程库的 master 分支 2.HEAD指向当前工作的branch,master不一定指向当前工作的branch 3.git  push ...

  8. Python学习(8)字符串

    目录 Python 字符串 Python 访问字符串中的值 Python 字符串更新 Python 转义字符 Python 字符串运算符 Python 字符串格式化 Python 三引号 Unicod ...

  9. (二)miller指导查看主控板寄存器操作

    Welcome to Command Shell!Username:admin Password:***** ROS>en ROS# ROS# ROS# ROS# ROS#^ada ROS(ad ...

  10. 【Todo】蒙特卡洛(蒙特卡罗)树 & 卷积网络

    https://www.zhihu.com/question/41176911/answer/90066752 这里面有关于Deep Learning和蒙特卡洛树的一些内容 https://www.z ...