那位给我一段winform下Treeview连接数据库的代码
Acc数据库
ID ClassName ParentID
问题点数:100、回复次数:4Top
1 楼wmt85(深山老翁)回复于 2006-02-20 21:43:52 得分 100
DataSet ds=new DataSet();
private void Form1_Load(object sender, System.EventArgs e)
{
// 定义数据库连接
SqlConnection CN = new SqlConnection();
try
{
//初始化连接字符串
CN.ConnectionString=
"data source=test;initial catalog=Benchmark;
persist security info=False;user id=sa;Password=123;";
CN.Open();
//添加命令,从数据库中得到数据
SqlCommand sqlCmd= new SqlCommand();
sqlCmd.Connection = CN;
sqlCmd.CommandText = "select * from tbTree";
sqlCmd.CommandType = CommandType.Text ;
SqlDataAdapter adp = new SqlDataAdapter(sqlCmd);
adp.Fill(ds);
}
catch (Exception ex)
{
throw (ex);
}
finally
{
CN.Close();
}
//调用递归函数,完成树形结构的生成
AddTree(0, (TreeNode)null);
}
// 递归添加树的节点
public void AddTree(int ParentID,TreeNode pNode)
{
DataView dvTree = new DataView(ds.Tables[0]);
//过滤ParentID,得到当前的所有子节点
dvTree.RowFilter = "[PARENTID] = " + ParentID;
foreach(DataRowView Row in dvTree)
{
if(pNode == null)
{ //'̀添加根节点
TreeNode Node = treeView1.Nodes.Add(Row["ClassName"].ToString());
AddTree(Int32.Parse(Row["ID"].ToString()),Node); //再次递归
}
else
{ //添加当前节点的子节点
TreeNode Node = pNode.Nodes.Add(Row["ClassName"].ToString());
AddTree(Int32.Parse(Row["ID"].ToString()),Node); //再次递归
}
}
} Top
2 楼wmt85(深山老翁)回复于 2006-02-20 21:45:41 得分 0
以上数据库是SQL的,自己改成ACCESS数据库吧!Top
3 楼camei(camei)回复于 2006-02-20 22:24:13 得分 0
OKTop
4 楼tigerhu76(虎虎)回复于 2006-03-06 08:31:45 得分 0
看看Top




