2011-01-30 95 views
0

清除所有asp:TreeView复选框以便它们全部未被选中的最佳方法是什么?我尝试了迭代treenodes并取消选中,但这不适用于子节点复选框。清除所有asp:TreeView复选框

+0

你可以使用JavaScript,对这里的东西:http://pushpontech.wordpress.com/2007/06/06/aspnet- 20-treeview-checkbox -checkuncheck-all-script/ – 2011-01-30 17:31:05

回答

1

你自己的答案很接近,但不会遍历树。尝试像这样的递归方法。

Private Sub unCheckNodesIncludingDescendants(Node as TreeNode) 
     Node.checked=false 
     For Each tn As TreeNode In Node.ChildNodes 
      tn.Checked = False 
      unCheckNodesIncludingDescendants(tn) 
     Next tn 
    End Sub 

你的初始呼叫应该是这样的:

private sub UncheckWholeTree(TreeControl as TreeView) 
    For each rootNode as TreeNode in TreeControl.nodes 
     unCheckNodesIncludingDescendants(rootNode) 
    Next rootNode 
end sub