我创建了以下递归例程来获取树视图中的所有检查节点:
Sub GetAllCheckedNodes(ByVal tn As TreeNode, ByRef NodesList As List(Of TreeNode))
If tn.Checked Then NodesList.Add(tn)
For Each nd As TreeNode In tn.Nodes
GetAllCheckedNodes(nd, NodesList)
Next
End Sub
基本上,我使用它的方式是声明一个空List(Of Treenode)
,然后将它作为第二个参数传递到这个例程中。我的问题是有人告诉我这是“不是很好”的编程实践——为什么以及会出现什么问题?
这似乎是我能想出的最优雅的解决方案来让它发挥作用。