treeView1分层显示

本文介绍了一种使用Oracle数据库查询结果动态填充TreeView控件的方法。通过创建OracleCommand对象执行SQL语句,并利用OracleDataReader读取结果集,实现了多层级节点的数据展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

            OracleConnection conn = new OracleConnection(ConnectionString);
            conn.Open();
            TreeNode tn1 = treeView1.Nodes.Add("第一层");     //第一层
            TreeNode tn1A = tn1.Nodes.Add("A");                        //第二层
            OracleCommand cmd1A = new OracleCommand("Select Shelve_no from T_GJ_Shelve Where CK_no='01' AND Shelve_no like '01A%' order by Shelve_no", conn);
            OracleDataReader sdr1A = cmd1A.ExecuteReader();        //创建数据读取器
            while (sdr1A.Read())                                                                 //读取数据
            {
                tn1A.Nodes.Add(sdr1A["Shelve_no"].ToString());          //添加第三层节点

            }
             sdr1A.Close();  //关闭数据读取器

            TreeNode tn1B=tn1.Nodes.Add("B");                                         //并列第二层
            OracleCommand cmd1B = new OracleCommand("Select Shelve_no from T_GJ_Shelve Where CK_no='01' AND Shelve_no like '01B%' order by Shelve_no",                          conn);//创建命令对象
            OracleDataReader sdr1B = cmd1B.ExecuteReader();        //创建数据读取器
            while (sdr1B.Read())        //读取数据
            {
                tn1B.Nodes.Add(sdr1B["Shelve_no"].ToString());           //添加并列第三层节点
            }
            sdr1B.Close();  //关闭数据读取器

          
            TreeNode tn3 = treeView1.Nodes.Add("并列第一层");        //添加并列第一层节点

            TreeNode tn11 = tn3.Nodes.Add("11");
            OracleCommand cmd11 = new OracleCommand("Select Shelve_no from T_GJ_shelve Where CK_name='其它工具库' AND Shelve_no like '11%' Order by                              Shelve_no", conn);//创建命令对象
            OracleDataReader sdr11 = cmd11.ExecuteReader();      //创建数据读取器
            while (sdr11.Read())        //读取数据
            {
                tn11.Nodes.Add(sdr11["Shelve_no"].ToString());          //添加节点
            }

            sdr11.Close();                     //关闭数据读取器

            conn.Close();                      //关闭数据库连
            treeView1.ExpandAll();     //展开所有节点 

          private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
           {
                treeView1.SelectedNode.Expand();
            }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮特大熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值