namespace TreeView { public partial class Form1 : Form { DataTable dt = null; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { dt = GetTreeView(); InitTreeView(treeView1.Nodes, 0); } public void InitTreeView(TreeNodeCollection con,int parentID) { TreeNode node = null; string strExpress = string.Format(" parentID={0}",parentID); DataRow[] dr = dt.Select(strExpress); foreach (DataRow row in dr) { node = new TreeNode(); node.Text = row["name"].ToString(); int ID = Convert.ToInt32(row["ID"].ToString()); InitTreeView(node.Nodes, ID); con.Add(node); } } public DataTable GetTreeView() { //int parent = 0; string conn = "server=.;database=test;uid=sa;pwd=123"; string strFor = string.Format("select * from menu"); SqlConnection con = new SqlConnection(conn); DataTable dt = new DataTable(); SqlDataAdapter da = new SqlDataAdapter(strFor, con); da.Fill(dt); return dt; } private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { MessageBox.Show(e.Node.Text); } } } 效果如图: