导航

C# TreeView节点的动态加载

Posted on 2009-05-22 12:40  kingwangzhen  阅读(1532)  评论(0编辑  收藏  举报

 try
            {
                SqlDataReader SalesPersonReader = GetSalePerson();
                SalesOrdertreeView.ImageList = ImgList;
                //遍历添加TreeView节点
                while (SalesPersonReader.Read())
                {
                    TreeNode SalesPersonNode = new TreeNode(SalesPersonReader.GetString(1));
                    SalesPersonNode.Tag = SalesPersonReader.GetInt32(0);

                    SalesPersonNode.ImageIndex = 0;
                    SalesPersonNode.StateImageIndex = 0;
                    SalesPersonNode.SelectedImageIndex = 0;
                    //添加业务员节点
                    SalesOrdertreeView.Nodes.Add(SalesPersonNode);
                    SqlDataReader SalesMarketReader = GetSalesMarket(SalesPersonReader.GetInt32(0));
                    //添加市场节点
                    while (SalesMarketReader.Read())
                    {
                        TreeNode SalesMarketNode = new TreeNode(SalesMarketReader.GetString(1));
                        SalesPersonNode.Nodes.Add(SalesMarketNode);
                        SalesMarketNode.Tag = SalesMarketReader.GetInt32(0);
                        SalesMarketNode.ImageIndex = 3;
                        SalesMarketNode.StateImageIndex = 3;
                        SalesMarketNode.SelectedImageIndex = 1;
                        SqlDataReader SalesCustomerReader = GetSalesCustomer(SalesMarketReader.GetInt32(0));

                        //添加客户节点
                        while (SalesCustomerReader.Read())
                        {
                            TreeNode SalesCustomerNode = new TreeNode(SalesCustomerReader.GetString(1));
                            SalesCustomerNode.Tag = SalesCustomerReader.GetInt32(0);
                            SalesCustomerNode.ImageIndex = 5;
                            SalesCustomerNode.StateImageIndex = 5;
                            SalesCustomerNode.SelectedImageIndex = 2;
                            SalesMarketNode.Nodes.Add(SalesCustomerNode);
                        }
                        SalesCustomerReader.Close();
                    }
                    SalesMarketReader.Close();
                }
                SalesPersonReader.Close();
            }
            catch (Exception EX)
            {
                MessageBox.Show(EX.Message);
            }
            finally
            {
                conn.Close();
            }