【问题标题】:Hiding all Leaf Nodes while Showing Child Nodes on an ASP.Net Tree View在 ASP.Net 树视图上显示子节点时隐藏所有叶节点
【发布时间】:2011-03-02 00:40:57
【问题描述】:

在我的网站中,我有一个具有这种结构的 TreeView:

根 |-叶子 |-家长 |--叶子 |--叶子 |--儿童 |---叶子 |---叶子 |--儿童 |---叶子 |---叶子

是否可以使树处于“折叠”状态,其中所有叶节点和仅叶节点都隐藏在视图之外,直到其父节点展开?理想的解决方案是在没有回发的情况下执行此操作,但此时任何解决方案都会有所帮助。

“折叠”视图如下所示:

根 |-家长 |--儿童 |--儿童

扩展 Root、Parent 或 Child 节点应该显示它们的 Leaf 节点。折叠节点应重新隐藏其叶节点,但让子节点可见。

【问题讨论】:

  • 您必须在javascript中使用var tree = $find('treeViewControl');然后使用var nodes = tree.get_allNodes()并检查nodes[i].get_nodes()的子项。

标签: c# asp.net treeview


【解决方案1】:

这是一个服务器端(未经测试)的解决方案:

TreeNodeCollection nodes = TreeView1.Nodes;
foreach (node in nodes)
{
   if (node.ChildNodes.Count == 0) 
   {
      node.Parent().Collapse();
   }
}

客户端解决方案绝对是首选。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-29
    相关资源
    最近更新 更多