|
■No80660 (やまだ さん) に返信
> For Each node As TreeNode In FolderTreeView.Nodes(0).Nodes
これはツリービューの一番上のノードの 0 番目のノードにぶら下がる子ノードを順番に見ていく処理です。
子ノードがさらに子ノード(孫ノード)を持っていたとしても、それは対象になりません。
子供の子供(孫)、そのさらに子供なども対象にするためには、再帰処理などが必要です。
一例として
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim 名前 As String = ""
CheckNodes(FolderTreeView.Nodes(0).Nodes, 名前)
If 名前.Count = 0 Then
MessageBox.Show("ノード要選択", "警告")
Else
MessageBox.Show(名前, "選択フォルダ一覧")
End If
End Sub
Private Sub CheckNodes(ByVal CurrentNode As TreeNodeCollection, ByRef 名前 As String)
For Each node As TreeNode In CurrentNode
If node.Checked Then
名前 = 名前 & node.Text & Environment.NewLine
End If
CheckNodes(node.Nodes, 名前)
Next
End Sub
|