2008-12-13 9 views
1

Je suis sûr que cela ressemble à une question n00b, mais comment ajouter des sous-éléments par programmation tout en remplissant une liste TreeView dans VB.NET 3.5? Je le code suivant, mais n'ont pas été en mesure de comprendre comment ajouter les sous-éléments pour chacun des dossiers/fichiers Je peuplant le TreeView avec:Ajouter des sous-éléments dans TreeView

Private Sub AddToList(ByVal targetDirectory As String, ByVal boolFiles As Boolean, Optional ByVal recur As Boolean = False) 

    Dim shortName As String 

    TreeView1.Items.Add(targetDirectory) 

    //Add subitems under here 

    If Directory.GetDirectories(targetDirectory).Length > 0 Then 
     Dim subdirectoryEntries As String() = Directory.GetDirectories(targetDirectory) 
     Dim subdirectory As String 

     For Each subdirectory In subdirectoryEntries 
      shortName = subdirectory.Remove(0, subdirectory.LastIndexOf("\") + 1) 
      TreeView1.Items.Add(shortName) 
      AddToList(subdirectory, False, True) 

      If boolFiles = True Then AddToList(subdirectory, boolFiles) 
     Next 
    End If 
End Sub 

Pour clarifier les choses, je veux que mon TreeView pour ressembler à l'aspect de Windows Explorer. J'apprécie toute aide!

Merci d'avance! JFV

Répondre

2

Vous devez utiliser des objets TreeNode et ajouter des sous-éléments au TreeNode parent, au lieu d'ajouter directement tout à TreeView. Découvrez this example.

+0

Merci pour l'exemple! Cela fonctionne comme un rêve maintenant! – JFV

1

De quel TreeView s'agit-il? Dans winforms, vous récupérez simplement le TreeNode renvoyé depuis Add, et ajoutez plus d'éléments à la propriété Nodes:

TreeNode parent = treeView.Nodes.Add("parent"); 
parent.Nodes.Add("child"); 
+0

Merci pour le code. Cela aide à tout mettre en perspective. – JFV