public void AddTree(string ParentID, TreeNode pNode) { SqlHelper sqlHelper = new SqlHelper(); TreeNode nodes = new TreeNode(); DataSet dsFrame = sqlHelper.treedataFather();//就是执行了上面的sql语句以后返回查询结果 DataTable dtTree = dsFrame.Tables[0]; DataView dvTree = new DataView(dtTree); //就是dtTree = dsFrame.Tables[0]; string Fstr = "ParentNo='" + ParentID+"'"; dvTree.RowFilter = Fstr; foreach (DataRowView Row in dvTree) { TreeNode Node = new TreeNode(); if (pNode == null) //处理主节点 { Node.Name = Row["No"].ToString(); //这里+了2个值分别到Name和Text,可随便 Node.Text = Row["Title"].ToString(); treeView1.Nodes.Add(Node); //加入 AddTree((Row["No"].ToString()), Node); //递归 } else //处理子节点 { Node.Name = Row["No"].ToString(); Node.Text = Row["Title"].ToString(); pNode.Nodes.Add(Node); AddTree((Row["No"].ToString()), Node); } } }
//调用
AddTree("", (TreeNode)null);
例图: