tableCId Name Department branch
1 111 部门1 分公司1
2 222 部门3 分公司3
3 333 部门1 分公司1
4 33 部门1 分公司1
5 78 部门2 分公司1
6 99 部门3 分公司3
前台
<asp:TreeView ID="TreeView1" runat="server">
  </asp:TreeView>
后台代码private void BindTree()
    {
        DataSet dst = GetTreeViewData();
        foreach (DataRow masterRow in dst.Tables["branch"].Rows)
        {
            TreeNode masterNode = new TreeNode((string)masterRow["Department"]);
            TreeView1.Nodes.Add(masterNode);
            foreach (DataRow childRow in masterRow.GetChildRows("Name"))
            {
                TreeNode childNode =new TreeNode((string)childRow["Department"]);
                masterNode.Expanded = false;
                masterNode.ChildNodes.Add(childNode);
            }
        }
    }private DataSet GetTreeViewData()
    {
        string constring = System.Configuration.ConfigurationSettings.AppSettings["NET"];
        SqlConnection con = new SqlConnection(constring);
        SqlDataAdapter dabranch = new SqlDataAdapter("SELECT distinct branch FROM tableC", con);
        SqlDataAdapter daDepartment = new SqlDataAdapter("SELECT distinct Department  FROM tableC", con);
        DataSet ds = new DataSet();
        dabranch.Fill(ds, "branch");
        daDepartment.Fill(ds, "Department");
        return ds;
    }
我想实现这样的一个效果
第一层:根结点
下一级:branch
再下一级:Department   
最后一级:Name
请高手指点