Oppure

Loading
26/04/08 13:34
Dark_Limit
Ciao a tutti!
Sto cercando di capire come elencare in una treeview la lista delle directory e files presenti nel disco rigido ( o meglio un'unità;) ho provato a cercare anche con google ma senza risultati positivi al riguardo..Qualcuno sarebbe così gentile da elencarmi un modo per fare questo?

Esempio:

C:\=>Nodo principale==>Doppio click ==>Nodi derivati a quello principale(Sottodirectory)

Grazie anticipatamente!!
Ultima modifica effettuata da Dark_Limit 26/04/08 13:42
aaa
27/04/08 13:27
Il Totem
Prendi la directory principale, C:\ (o qualche altra unità a seconda dei casi). Usi la funzione IO.Directory.GetDirectories su di essa per ottenere le sottocartelle e IO.Idrectory.GetFiles per ottenere i files ivi contenuti. Quindi aggiungi tanti nodi quante sono cartelle e files.
Ora, ti suggerisco una cosa. NON calcolare prima tutto l'albero gerarchico delle directory, ci metterebbe troppo tempo. Limitati invece a elencare quelle direttamente dipendenti da C: o altre importanti come Documenti e Desktop: ai nodi di queste cartelle associ un dato valore del Tag (ad esempio True, per distinguerle dai nodi-file). Quando ci si fa click sopra, ti ricavi sottodirectory e sottofile e li aggiungi a quel nodo.
In questo modo risparmi memoria e tempo con il massimo guadagno di efficienza.
L'evento da usare mi sembra di "Click": per rintracciare l'elemento cliccato, basta prendere il nodo selezionato (TreeView.SelectedNodes(0)).
aaa