在asp.net C#中动态展开树视图

时间:2013-10-07 13:24:43

标签: c# asp.net treeview

我的列表中存储了一些值。我使用以下代码填充树视图:

foreach (DataRow row in ResultSet.Tables[0].Rows)
{
    TreeNode newNode = new TreeNode();
    newNode.Text = row["Folder_Name"].ToString();
    newNode.Value = row["Folder_Code"].ToString() + "/1" + '@' + row["Short_Name"].ToString();
    newNode.PopulateOnDemand = true;
    // newNode.NavigateUrl = "DisplayNodebygreed.aspx?value=" + newNode.Value + "";  
    newNode.ImageUrl = "~/Images/folderSmall2.jpg";
    TreeView_Parent_Child.Nodes.Add(newNode);
}

abc = (List<string>)Session["submainlevel"];

在我的这个列表中,我存储了诸如

之类的值
1st position 2
2nd : 3
3rd : 3

现在我需要检查已由初始代码填充的树的值,并根据上面列出的值列表中的值进行扩展。我该怎么办呢。我正在使用一个代码,我从stackoverflow的答案得到。下面是我试图执行以填充并使其相应扩展的代码。

foreach (TreeNode node in TreeView_Parent_Child.Nodes)
    if (node.Value.Split('/')[0] == abc[a].Split('/')[0])
        ExpandMyLitleBoys(node, abc);

private void ExpandMyLitleBoys(TreeNode node, List<string> path)
{
    path.RemoveAt(0);
    node.Expand();
    if (path.Count == 0)
            return;

    foreach (TreeNode mynode in node.ChildNodes)
        if (mynode.Text == path[0].Split('/')[0])
            ExpandMyLitleBoys(mynode, path); //recursive call    
}

请帮忙。我正在进行一个现场项目。请。

0 个答案:

没有答案