Articles in this section
Category / Section

How to select all the leaf nodes of the parent node in WinForms TreeViewAdv?

1 min read

AfterSelect event

We can select all the leaf nodes of the parent node by just selecting the parent node by handling the AfterSelect Event handler.

C#

private void treeViewAdv1_AfterSelect(object sender, System.EventArgs e)
{
   TreeNodeAdvCollection tn = new TreeNodeAdvCollection();
   foreach (TreeNodeAdv n in this.treeViewAdv1.SelectedNodes)
   {
      this.AddChildren(tn, n);
   }
   foreach (TreeNodeAdv n in tn)
   {
      this.treeViewAdv1.SelectedNodes.Add(n);
   }
}
private void AddChildren(TreeNodeAdvCollection tn, TreeNodeAdv n)
{
   foreach (TreeNodeAdv child in n.Nodes)
   {
      tn.Add(child);
      this.AddChildren(tn, child);
   }
}

VB

Private Sub treeViewAdv1_AfterSelect(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim tn As TreeNodeAdvCollection = New TreeNodeAdvCollection()
    For Each n As TreeNodeAdv In Me.treeViewAdv1.SelectedNodes
       Me.AddChildren(tn, n)
    Next n
    For Each n As TreeNodeAdv In tn
       Me.treeViewAdv1.SelectedNodes.Add(n)
    Next n
End Sub
Private Sub AddChildren(ByVal tn As TreeNodeAdvCollection, ByVal n As TreeNodeAdv)
    For Each child As TreeNodeAdv In n.Nodes
        tn.Add(child)
        Me.AddChildren(tn, child)
    Next child
End Sub

Reference link: Select all the leaf nodes using AfterSelect event

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please  to leave a comment
Access denied
Access denied