马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

新手学C# 帮我看看TreeView递归问题;谢了!

[复制链接]
查看5090 | 回复3 | 2018-6-29 00:26:50 | 显示全部楼层 |阅读模式
本帖最后由 huangsandy 于 2018-6-29 00:33 编辑

只要加这一句程序就报错,不加的话,二层树结构读取正常,那位大神帮我看看什么情况;先谢谢了!
  //NodesBind(tn1);     //递归操作



//一级树节点读取方法:
        private void TreeOne()
        {
            string sql = string.Format("select * from [Tree_1] where father=-1");
            sda = new SqlDataAdapter(sql, DBhelper.Connection);       //利用SqlDataAdapter提取数据库,其中Sql为查询语法;DBhelper.Connection为定义好的连接对象
            sda.Fill(ds, "TreeOne1");                                       //填充DataSet数据集
            DataTable dt = ds.Tables["TreeOne1"];                           //给数据表[dt]赋值;
            foreach (DataRow dr in dt.Rows)
            {
                string xh = dr["xh"].ToString().Trim();      //取得索引号,用于后面的查询
                string mc = dr["mc"].ToString().Trim();      //取得部名名称
                TreeNode tn1= new TreeNode(mc);
                treeView1.Tag = xh;  
                NodesBind(tn1);  //调用方法NodesBind
                treeView1.Nodes.Add(tn1);                     //增加节点

            }
        }
        //添加子节点
        private void NodesBind(TreeNode tn1)
        {
            string sql1 = string.Format("select * from [Tree_1] where father={0}", treeView1.Tag);
            sda = new SqlDataAdapter(sql1, DBhelper.Connection);              //利用SqlDataAdapter提取数据库,其中Sql为查询语法;DBhelper.Connection为定义好的连接对象
            sda.Fill(ds, "TreeTwo1");                                         //填充DataSet数据集
            DataTable dt1 = ds.Tables["TreeTwo1"];                            //给数据表[dt]赋值;
                foreach (DataRow dr1 in dt1.Rows)
                {
                    string xh_1 = dr1["xh"].ToString().Trim();        //取得索引号,用于后面的查询
                    string mc_1 = dr1["mc"].ToString().Trim();        //取得部名名称
                    TreeNode tnn = new TreeNode(mc_1);
                    treeView1.Tag = xh_1;
                    //NodesBind(tn1);                                  //递归操作
                    tn1.Nodes.Add(tnn);                              //增加节点
                 }
            ds.Tables.Remove("TreeTwo1");
            return;
        }

剑弑 | 2018-7-11 10:54:11 | 显示全部楼层
什么错误
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则