最近在做软件时碰到一个这样的问题,我们加载窗体时想在数据库中将全国的省、市动态的加到TreeView控件中,形成一种查询树。经过自己的努力,终于实现了,在此拿来与各位同仁参考讨论。

代码如下:

           SqlConnection cnn = new SqlConnection("Data Source=ZBY;Initial Catalog=howard56;Integrated Security=True");
            cnn.Open();
            SqlCommand myCmd = new SqlCommand();
            myCmd.CommandText = "select distinct province from f_city";
            myCmd.Connection = cnn;
            SqlDataReader myReader=myCmd.ExecuteReader();
            while (myReader.Read ())
            {
                TreeNode tt = new TreeNode();
                tt.Text =myReader.GetString(0);
                treeView1.Nodes.Add(tt.Text);
               
                SqlConnection cn = new SqlConnection("Data Source=ZBY;Initial Catalog=howard56;Integrated Security=True");
                cn.Open();
                SqlCommand mycmd = new SqlCommand();
                mycmd.CommandText = "select distinct city from f_city where province=@province";
                mycmd.Connection = cn;
                mycmd.Parameters.Add("@province", SqlDbType.Char, 15).Value = tt.Text;
                SqlDataReader myDr = mycmd.ExecuteReader();
                while (myDr.Read())
                {
                    TreeNode ss = new TreeNode();
                    ss.Text = myDr.GetString(0);
                    int i=treeView1.Nodes.Count;
                    treeView1.Nodes[i-1].Nodes.Add(ss.Text);
                }
               
            }

只需将上面的代码中的数据库名称和连接地址,以及相应的字段名修改,然后将代码添加到要执行的事件之中就可以了。哈哈,大家试试吧!

相关文章: