У меня есть элемент управления TreeView в моем приложении WinForms.NET, который имеет несколько уровней дочерних элементов, у которых есть дочерние элементы с большим количеством дочерних элементов, без определенной глубины. Когда пользователь выбирает любого родителя node (необязательно на корневом уровне), как я могу получить список всех узлов с этим родителем node?
Например, я начал с этого:
Dim nodes As List(Of String)
For Each childNodeLevel1 As TreeNode In parentNode.Nodes
For Each childNodeLevel2 As TreeNode In childNodeLevel1.Nodes
For Each childNodeLevel3 As TreeNode In childNodeLevel2.Nodes
nodes.Add(childNodeLevel3.Text)
Next
Next
Next
Проблема в том, что эта глубина цикла определена, и я получаю узлы только на трех уровнях. Что делать, если в следующий раз пользователь выберет родительский node, существует семь уровней?