动态加载treeview
[@more@] protected void Page_Load(object sender, EventArgs e){
if (!Page.IsPostBack)
{
DataSet ds = condata.SelectData("U001");
//调用递归函数,完成树形结构的生成
AddTree(0, (TreeNode)null, ds);
}
}
public void AddTree(int ParentID, TreeNode pNode, DataSet ds)
{
DataView dvTree = new DataView(ds.Tables[0]);
//过滤ParentID,得到当前的所有子节点
dvTree.RowFilter = "[menuePid] = " + ParentID;
foreach (DataRowView Row in dvTree)
{
if (pNode == null)
{ //添加根节点
TreeNode Node = new TreeNode();
Node.Text = Row["menueName"].ToString();//设置节点的文本
Node.NavigateUrl = Row["menueUrl"].ToString();//设置节点的url
Node.ImageUrl = "../image/" + Row["menueIsPic"].ToString();//设置节点旁边的图像
TreeView1.Nodes.Add(Node);
AddTree(Int32.Parse(Row["menueId"].ToString()), Node, ds); //再次递归
}
else
{ //添加当前节点的子节点
TreeNode Node = new TreeNode();
Node.Text = Row["menueName"].ToString();//设置节点的文本
Node.NavigateUrl = Row["menueUrl"].ToString();//设置节点的url
Node.ImageUrl = "../image/" + Row["menueIsPic"].ToString();//设置节点旁边的图像
pNode.ChildNodes.Add(Node);
AddTree(Int32.Parse(Row["menueId"].ToString()), Node, ds); //再次递归
}
}
}
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7436820/viewspace-926421/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7436820/viewspace-926421/