C#,asp.net 递归算法初始化树节点

  通过递归的方式初始化树节点

  方法如下

  表结构: TREE_ID  树编号ID ,

                   TREE_NAME  树名称, 

                   TREE_PARENT_ID 父节点编号ID,

                   DESCR 描述 

 public void InitTreeList(TreeNodeCollection Nds, string partent_id, DataTable dt)

        {
            DataView dv = new DataView();  //创建一个 DataView对象
            TreeNode tmpNd;//节点对象
            dv.Table = dt;//存放节点的DataTable 
            dv.RowFilter = "TREE_PARENT_ID='" + partent_id + "'";//过滤
            foreach (DataRowView dr in dv)//遍历循环 
            {
                tmpNd = new TreeNode();
                if (dr["TREE_ID"].ToString().Trim().StartsWith("frm"))
                {
                    tmpNd.Tag = "lastNode";//判断是否为根节点  
                }
                tmpNd.Name = dr["TREE_ID"].ToString().Trim();//节点属性赋值 名称
                tmpNd.Text = dr["TREE_NAME"].ToString().Trim();// tmpNd.Text = dr["TREE_NODE_NAME"].ToString().Trim();//显示的Text
                tmpNd.SelectedImageIndex = 1;//树节点添加图标   添加一个Imagelist 就好了 
                Nds.Add(tmpNd);//添加节点
                InitTreeList(tmpNd.Nodes, tmpNd.Name.ToString(), dt);//递归调用
            }

        }

调用:

  InitTreeList(trv_func.Nodes, "VV", dtTree);

// 参数解释: trv_func 就是窗体中的Treeview控件 ,"VV" 初始化节点的时候根节点 俗名:老嘎达 ,dtTree 存放树结构的表


有问题请加QQ群 :480888314


欢迎大家互动 共享




阅读更多
上一篇asp.net C# 代码段运行时监控
下一篇C# 预执行 事务回滚
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭