ツリービューでチェックされたすべてのノードを取得するために、次の再帰ルーチンを作成しました。
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)
、2 番目の引数としてこのルーチンに渡すことです。私の質問は、これは「良くない」プログラミング手法だと言われたということです。なぜ、何がうまくいかないのでしょうか?
これを機能させるために思いついた最もエレガントなソリューションのようです。