最近在做软件时碰到一个这样的问题,我们加载窗体时想在数据库中将全国的省、市动态的加到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);
}
}
只需将上面的代码中的数据库名称和连接地址,以及相应的字段名修改,然后将代码添加到要执行的事件之中就可以了。哈哈,大家试试吧!