【全国软件开发交流群】131627487 【全国软件测试交流群】144758063 【全国计算机技术交流】131628626

TreeView实现绑定数据

代码如下:

        private void Form2_Load(object sender, EventArgs e)
        {
            //定义treeview所要使用的图标
            ImageList image1 = new ImageList();
            image1.Images.Add(Bitmap.FromFile(@"1.gif"));
            image1.Images.Add(Bitmap.FromFile(@"2.gif"));

            treeView1.ImageList = image1;
            tvGetData();
        }


        public void tvGetData()
        {
            string connStr = "Server=.;Database=db_02;User=sa;Pwd=";
            using (SqlConnection myConn = new SqlConnection(connStr))
            {
                myConn.Open();
                SqlCommand myComm = new SqlCommand("select * from tb_08", myConn);
                SqlDataReader myReader = myComm.ExecuteReader();
                TreeNode allNode = treeView1.Nodes.Add("a", "学生信息", 0, 1);
                TreeNode firNode = new TreeNode("0421班");
                TreeNode secNode = new TreeNode("0422班");
                TreeNode thrNode = new TreeNode("0423班");

                //将上面定义的节点添加到TreeView1
                allNode.Nodes.Add(firNode);
                allNode.Nodes.Add(secNode);
                allNode.Nodes.Add(thrNode);

                while (myReader.Read())
                {
                    switch (myReader[7].ToString())
                    {
                        case "0421班":
                            TreeNode fir = new TreeNode("编号" + myReader[0].ToString());
                            fir.Nodes.Add("姓名:" + myReader[1].ToString());
                            firNode.Nodes.Add(fir);
                            break;

                        case "0422班":
                            TreeNode sec = new TreeNode("编号" + myReader[0].ToString());
                            sec.Nodes.Add("姓名:" + myReader[1].ToString());
                            secNode.Nodes.Add(sec);
                            break;

                        case "0423班":
                            TreeNode thr = new TreeNode("编号" + myReader[0].ToString());
                            thr.Nodes.Add("姓名:" + myReader[1].ToString());
                            thrNode.Nodes.Add(thr);
                            break;
                    }
                }
                myReader.Close();
                myConn.Close();
            }
        }

        public void getStuInfo(string stuNum)
        {
            string connStr = "Server=.;Database=db_02;User=sa;Pwd=";
            using (SqlConnection myConn = new SqlConnection(connStr))
            {
                myConn.Open();
                SqlCommand myComm = new SqlCommand("select * from tb_08 where 学生编号='"+stuNum+"'", myConn);
                SqlDataReader myReader = myComm.ExecuteReader();
                while (myReader.Read())
                {
                    textBox1.Text = myReader[0].ToString();
                    if (myReader[1].ToString() == "男")
                    {
                        radioButton1.Checked = true;
                    }
                    else
                    {
                        radioButton2.Checked = true;
                    }
                    textBox2.Text = myReader[4].ToString();
                    textBox3.Text = myReader[5].ToString();
                    textBox4.Text = myReader[1].ToString();
                    textBox5.Text = myReader[7].ToString();
                    textBox6.Text = myReader[6].ToString();
                    textBox7.Text = myReader[3].ToString();
                }
                myReader.Close();
                myConn.Close();
            }

        }

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            getStuInfo(treeView1.SelectedNode.Text.Substring(2));//SubSting(Int32)表示从指定的字符开始截取
        }

运行结果:

posted @ 2011-05-22 10:03  编程中国  阅读(190)  评论(0)    收藏  举报