.cs页面代码:
public partial class DeptManger : System.Web.UI.Page
{
DataSet ds = new DataSet(); //定义一个DataSet
SqlConnection Conn = new SqlConnection("server=.;database=HRIS;uid=sa;pwd=");
DataSet ds1;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Conn.Open();
this.createDataSet();
Conn.Close();
this.InitTree(this.TreeView1.Nodes, "0"); // parentId 是从0开始的
}
}
private DataSet createDataSet()
{
ds1 = new DataSet();
string sqlStr = "select * from department ";
SqlDataAdapter cmdSelect = new SqlDataAdapter(sqlStr, Conn);
cmdSelect.Fill(ds1, "Tree");
return ds1;
}
protected void InitTree(TreeNodeCollection Nds, string parentId)//用递归方法动态生成节点
{
DataView dv = new DataView();
TreeNode tmpNode;
dv.Table = ds1.Tables["Tree"];
dv.RowFilter = "ParentId=" + "'" + parentId + "'";
foreach (DataRowView drv in dv)
{
tmpNode = new TreeNode();
tmpNode.Value = drv["EM_deptCode"].ToString();//子的名称;
tmpNode.ToolTip = drv["EM_deptCode"].ToString();//子的编号;
tmpNode.Text = drv["EM_dept"].ToString();
// tmpNode.ImageUrl =~/Images/team2.gif;
// tmpNode.NavigateUrl = "#";
Nds.Add(tmpNode);
this.InitTree(tmpNode.ChildNodes, tmpNode.Value);//递归
}
}