读取xml 树形结构
2012-03-18
<?xml version="1.0" encoding="utf-8" ?>
<Root url="Index.aspx" name="日报系统总览" describe="日报系统">
<Parent url="Default.aspx" name="任务管理" describe="任务管理" >
<Child url="MyWork.aspx" name="我的工作台" describe="我的工作台" />
<Child url="OverWork.aspx" name="以完成的任务" describe="以完成的任务" />
<Child url="dailyPaper.aspx" name="日报" describe="日报" />
<Child url="weekly.aspx" name="周报" describe="周报" />
</Parent>
</Root>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Left : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
XmlDataSource XmlComputer = new XmlDataSource(); //建立XmlDataSource实例
XmlComputer.ID = "ComputerProducts";
XmlComputer.DataFile = "XMLFile.xml"; //指定XmlDataSource来源为XML文件
TreeView1.DataSource = XmlComputer; //指定xml数据
//或是您可以用下列方式声明
//指定TreeView的数据源为XmlComputer
//TreeView1.DataSourceID = XmlComputer.UniqueID;
//Page.Controls.Add(XmlComputer);
//建立根节点
TreeNodeBinding RootBinding = new TreeNodeBinding();
RootBinding.DataMember = "Root"; //指定RootBinding数据成员为Root节点
RootBinding.NavigateUrlField = "url"; //指定RootBinding的NavigateUrl为url
RootBinding.TextField = "name"; //指定TextField为name
RootBinding.ToolTipField = "describe"; //指定ToolTipField为describe
RootBinding.Target = "mainframe";
//将RootBinding加入DataBindings之中
TreeView1.DataBindings.Add(RootBinding);
//建立父节点
TreeNodeBinding ParentBinding = new TreeNodeBinding();
ParentBinding.DataMember = "Parent";
ParentBinding.NavigateUrlField = "url";
ParentBinding.TextField = "name";
ParentBinding.ToolTipField = "describe";
ParentBinding.Target = "mainframe";
TreeView1.DataBindings.Add(ParentBinding);
//建立子节点(叶节点)
TreeNodeBinding ChildBinding = new TreeNodeBinding();
ChildBinding.DataMember = "Child";
ChildBinding.NavigateUrlField = "url";
ChildBinding.TextField = "name";
ChildBinding.ToolTipField = "describe";
ChildBinding.Target = "mainframe";
TreeView1.DataBindings.Add(ChildBinding);
//Page.FindControl("Form1").Controls.Add(TreeView1);
this.TreeView1.DataBind(); //TreeView进行数据绑定
}
}
}
编辑器加载中...
浙公网安备 33010602011771号