2009-12-28 12 views
7

Come compilare un TreeView con una directory come stringa. Sto usando il FolderBrowserDialog per selezionare una cartella e la proprietà SelectedPath per ottenere il percorso della stringa (ad esempio C: \ Users \ Admin).Compilare un TreeView con una directory di stringa


Inoltre, è possibile visualizzare file come questo?

risposta

10
private void button1_Click(object sender, EventArgs e) 
{ 
    FolderBrowserDialog dialog = new FolderBrowserDialog(); 
    if (dialog.ShowDialog() != DialogResult.OK) { return; } 

    this.treeView1.Nodes.Add(TraverseDirectory(dialog.SelectedPath)); 

} 


private TreeNode TraverseDirectory(string path) 
{ 
    TreeNode result = new TreeNode(path); 
    foreach (var subdirectory in Directory.GetDirectories(path)) 
    { 
     result.Nodes.Add(TraverseDirectory(subdirectory)); 
    } 

    return result; 
} 
0

Aggiungere il nodo directory alla vista ad albero. Impostare il nome dei nodi sul percorso completo e il testo sul nome della directory.

Aggiungere ricorsivamente nodi a treeview. Utilizzare le collezioni System.IO DirectoryInfo e FileInfo per ottenere i file e le directory in ogni oggetto DirectoryInfo. rendere la condizione di chiusura della funzione ricorsiva il caso in cui non ci sono directory secondarie.

0

Si potrebbe considerare l'utilizzo di controlli come delle cartelle e FileView da Shell MegaPack. Possono essere inseriti all'interno di moduli personalizzati invece di aprire una finestra di dialogo modale.

Problemi correlati