想实现这样的功能
---------------------------|
长沙(一级节点)           |
  长沙威胜(二级节点)     |       
  中联中科(二级节点)     | 
                           |
                           | 
                           |
北京(一级节点)           |
  北京某某公司(二级节点) |
                           |
                           |
上海(一级节点)           |
  上海某某公司(二级节点) |
___________________________|我想实现上面这颗树首先我添加 一级节点
  foreach (DataRowView row in ds.Tables[0].DefaultView)
        {
            node = new TreeNode();
            node.Text = row["name"].ToString();
            node.Value = row["id"].ToString();
            node.NavigateUrl = "buildingconfig/b_tabpage_update.aspx?id="+node.Value    ;
            node.Target = "Right";
            TreeView1.Nodes.Add(node);
        }然后添加2级节点,
我的想法是把2级节点添加到对应的一级节点。比如,长沙威胜电子,在数据库中但单位表有这样一条记录  pjtname=长沙威胜   所属地市:长沙有很多单位信息,我想把每条单位的信息添加到对应的一级节点 里面 ,根据 单位表里面的“所属地市” 来做判断。请问怎样处理

解决方案 »

  1.   

    http://www.cnblogs.com/kingfly/archive/2009/09/21/1571016.html看下这个你再不会你打熊猫!
      

  2.   

    先绑定一级再绑定二级 然后循环ddl 取出每个一级菜单的id 再去数据库查它的二级 把查到的二级菜单insert到一级后就ok了 就这么简单
      

  3.   

    前台代码
     <asp:TreeView ID="TreeView1" runat="server">
            <Nodes>
                <asp:TreeNode Text="上海" Value="上海"></asp:TreeNode>
                <asp:TreeNode Text="长沙" Value="长沙"></asp:TreeNode>
                <asp:TreeNode Text="北京" Value="北京"></asp:TreeNode>
            </Nodes>
        </asp:TreeView>
        <asp:Button ID="Button1" runat="server" Text="Button" 
            onclick="Button1_Click" />
    后台代码:
     protected void Button1_Click(object sender, EventArgs e)
            {
                //模拟数据
                DataTable dt = new DataTable();
                dt.Columns.Add("city");
                for (int i = 0; i < 10; i++)
                {
                    DataRow row = dt.NewRow();
                    if (i % 1 == 0)
                    {
                       
                        row["city"] = "长沙";
                    }
                    if (i % 2 == 0)
                    {
                        row["city"] = "北京";
                    }
                    if (i % 3 == 0)
                    {
                        row["city"] = "上海";
                    }
                    dt.Rows.Add(row);
                }
                //构建二次节点
                foreach(DataRow row in dt.Rows)
                {
                    foreach (TreeNode n in this.TreeView1.Nodes)
                    {
                        if (row["city"].ToString() == n.Text)
                        {
                            ConstructNode(n, row["city"].ToString());
                            continue;
                        }
                    }
                }
                
            }        void ConstructNode(TreeNode node,string value)
            {
                TreeNode n = new TreeNode(value);
                node.ChildNodes.Add(n);
            }
    ------根据自己的结构作调整。