今天说一下简单的TreeView绑定xml
首先我们先建立个xml,文件名为xitong.xml
<?xml version="1.0" encoding="utf-8" ?>
<tree text="系统">
<jiedian text="新用户注册" url="aaa.aspx"></jiedian>
<jiedian text="修改密码" url="aaa.aspx"></jiedian>
<jiedian text="退出" url="aaa.aspx"></jiedian>
</tree>
这个简单的xml构建好了,下来在页面中新建一个TreeView
<form id="form1" runat="server">
<div>
<asp:TreeView ID="treelist" runat="server">
</asp:TreeView>
</div>
</form>
后台:
public void Bind(string strxml)
{
treelist.Nodes.Clear();
XmlDataSource xds = new XmlDataSource();
xds.DataFile = Server.MapPath(strxml);
XmlDocument xmlDocument = xds.GetXmlDocument();
//把根节点的东东和treeView实例根节点群丢进去递归
BindXmlToTreeView(xmlDocument.DocumentElement, treelist.Nodes);
}
public void BindXmlToTreeView(XmlNode node, TreeNodeCollection tnc)
{
//获得节点字段值
string text = ((XmlElement)node).GetAttribute("text");
string strurl = ((XmlElement)node).GetAttribute("url");
string Value = node.Name;
tnc.Add(new TreeNode(text, Value, "", strurl, ""));
foreach (XmlNode n in node.ChildNodes)
{
//指向子节点和父节点的子节点群
BindXmlToTreeView(n, tnc[tnc.Count - 1].ChildNodes);
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Bind("xitong.xml");//调用方法参数是xml的文件名
}
}