正在将子节点添加到树视图控件ASP.Net

本文关键字:视图 控件 ASP Net 子节点 添加 | 更新日期: 2023-09-27 18:23:40

我正在尝试将子节点添加到树视图控件中的父节点。在degbug中一切都运行良好,它们看起来就像是被添加了一样,但我所能看到的只是父节点。有人能给这个点光吗。谢谢

foreach (var item in agencyListRoot)
{
     TreeNode parentNode = new TreeNode();
     TreeNode childNode = new TreeNode();
     if (item.HeirID.ToString() == "/1/")
     {
          parentNode.Text = item.AgencyName.ToString();
          tv_Agencies.Nodes.Add(parentNode);
     } 
     if (item.HeirID.ToString() == "/1/2/")
     {
         childNode.Text = item.AgencyName.ToString();
         parentNode.ChildNodes.Add(childNode);
     }
}

正在将子节点添加到树视图控件ASP.Net

也许这段代码会对你有所帮助。。

    foreach (DataRow dr in dtTree.Select("parent_id is null")) // To get the each parent node in the table or anything else
    {
    TreeNode node = new TreeNode(dr["name"].ToString(), dr["s_no"].ToString());
    TreeView1.Nodes.Add(node); // Adding Parent node to the treeview
    string serial_no = dr["s_no"].ToString(); // store parent node value or text in an variable
    foreach(DataRow dr1 in dtTree.Select("parent_id = '"+serial_no+"'")) // To get child node of parent node
    {
        TreeNode child_node = new TreeNode(dr1["name"].ToString(), dr1["s_no"].ToString());
        node.ChildNodes.Add(child_node);// Here adding the child node to particular parent node.
    }
    }

如果你想要我的表格结构的意思。创建这样的表。

感谢和问候,Ganesh。S

是的,ASP.NET树控件是多变的。您需要先添加所有子节点,然后将父节点添加到树视图中。

var root = new TreeNode("root");
TreeNode group = root;

所以这就是解决方案。不是最漂亮的,但它能满足我的需要。

foreach (var item in agencyListRoot)
{            
    if (item.HeirID.ToString() == "/1/")
    {
        group = new TreeNode(item.AgencyName.ToString());
        root.ChildNodes.Add(group);
    } 
    else if (item.HeirID.ToString() == "/1/2/")
    {
        TreeNode childNodeU = new TreeNode(item.AgencyName.ToString());
        group.ChildNodes.Add(childNodeU);
    }
}