欢迎来到HELLO素材网! 南京网站制作选择顺炫科技
丰富的DIV CSS模版、JS,jQuery特效免费提供下载
当前位置:主页 > 建站教程 > 网站制作教程 >

C#利用递归算法给TreeView控件绑定数据

发表于2019-04-24 03:06| 次阅读| 来源网络整理| 作者session

摘要:C#利用递归算法给TreeView控件绑定数据

/// summary /// 查找根节点(parent_ID为0的节点)的子节点 /// /summary /// param name=parent_ID参数,接纳根节点ID即0/param public void bindtree(string parent_ID) { this.tvgood.Nodes.Clear(); DataTable dt = frmgb.Getdata(parent_ID); if (dt.Rows.Count 0)

C#利用递归算法给TreeView控件绑定数据

/// <summary>
        /// 查找根节点(parent_ID为0的节点)的子节点
        /// </summary>
        /// <param name="parent_ID">参数,接纳根节点ID即0</param>
        public void bindtree(string parent_ID)
        {
            this.tvgood.Nodes.Clear();
            DataTable dt = frmgb.Getdata(parent_ID);
            if (dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TreeNode node = new TreeNode();
                    node.Text = dt.Rows[i]["gt_Name"].ToString();
                    node.Tag = dt.Rows[i]["gt_ID"].ToString();
                    DataTable dt1 = frmgb.Getdata(node.Tag.ToString());
                    this.tvgood.Nodes.Add(node);//把指定节点减少到控件中
                    frmgb.bindnode(node);//递归遍历制订节点下的子节点
                }
            }
        }

/// <summary>
        /// 递归遍历指定节点下的子节点
        /// </summary>
        /// <param name="nd">参数,接纳节点对象</param>
        public void bindnode(TreeNode nd)
        {
            try
            {
                DataTable dt = Getdata(nd.Tag.ToString());
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TreeNode node = new TreeNode();
                    node.Text = dt.Rows[i]["gt_Name"].ToString();
                    node.Tag = dt.Rows[i]["gt_ID"].ToString();
                    DataTable dt1 = Getdata(node.Tag.ToString());
                    nd.Nodes.Add(node);//把指定节点减少到控件中
                    bindnode(node);
                }
            }
            catch (Exception error)
            {
                throw error;
            }
        }