当前位置:编程学习 > C#/ASP.NET >>

数据库动态添加treeview的节点

代码如下,在网上找的,修改了一下,但是没有反应,节点无法添加,求解,谢谢! 


private DataView dvDept = null;
    protected void Page_Load(object sender, EventArgs e)
    {
        AddTree(-1, (TreeNode)null);
    }
 public void AddTree(int parentId, TreeNode pNode)
    {
        string settings = System.Configuration.ConfigurationManager.AppSettings["SQLConnString"].ToString() + Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["dbPath"]) + ";";
        OleDbConnection myconn = new OleDbConnection(settings);
        myconn.Open();
        string sqlstr = "select * from deptTree";
        OleDbDataAdapter da = new OleDbDataAdapter(sqlstr, myconn);
        DataSet ds = new DataSet();
        da.Fill(ds, "deptTree");
        dvDept = ds.Tables["deptTree"].DefaultView;
        myconn.Close();

        dvDept.RowFilter = "parentId=" + parentId;
        foreach (DataRowView row in dvDept)
        {
            TreeNode Node = new TreeNode();
            if (pNode == null)  //当节点的父节点为空,则添加当前节点为根节点
            {
                Node.Text = row["deptName"].ToString();
                Node.Value = row["nodeValue"].ToString();
                TreeView1.Nodes.Add(Node);
                Node.Expanded = true;
                AddTree(Int32.Parse(row["deptId"].ToString()), Node);    //再次递归

              
            }
            else
            {
                //添加当前节点的子节点
                Node.Text = "<a href='#' onDblClick=\"abc('" + row["nodeValue"].ToString() + "','" + row["deptName"].ToString() + "')\">" + row["deptName"].ToString() + "</a>";
                Node.Value = row["nodeValue"].ToString();
                pNode.ChildNodes.Add(Node);
                Node.Expanded = true; //节点状态展开
                AddTree(Int32.Parse(row["deptId"].ToString()), Node);     //再次递归
            }
        }
       
    } --------------------编程问答-------------------- 刚回答过这个问题
你可以看看
http://topic.csdn.net/u/20120406/22/097ea06c-4b88-4575-a0c4-d5c32f1d2b09.html
这个帖子 1楼和2楼回答的都可以参考。 2楼的比较详细。 --------------------编程问答-------------------- AddTree(-1, (TreeNode)null);
不要这样带,第二个参数(TreeNode)null换成你的treeview控件的ID
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,