C# selezionare nomi cartelle

domenica 25 aprile 2010 - 16.41

fixed Profilo | Junior Member

ciao a tutti,
ho bisogno di selezionare più cartelle e ti copiare i loro nomi in una clipboard.
già lo faccio per i nomi dei file è è ok, ma non riesco a capire come fare per selezionare e prendere il nome di N cartelle.


public void CopyClipboardFile()
{
OpenFileDialog openDialog = new OpenFileDialog();

openDialog.Multiselect = true;
openDialog.ShowDialog();
string listaFile = "";


string[] nomifile = openDialog. FileNames;

foreach (string sFile in nomifile)
{
listaFile = string.Format("{1}\n{0}", listaFile, sFile);
}

Clipboard.SetDataObject(listaFile);

}

freeteo Profilo | Guru

Ciao,
penso che la classe "OpenFileDialog" non tenga conto delle directory, dato che è nata per far scegliere all'utente un file probabilmente non è stata pensata un'esigenza di questo tipo.

Se vuoi puoi provare ad usare "FolderBrowseDialog" che è nata per scegliere directory, il problema è che permette la scelta di solo una alla volta, non so se vuoi mettere il codice dentro ad un ciclo...

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

fixed Profilo | Junior Member

ciao,
si infatti la FolderBrowseDialog permette di selezionare solo una cartella,
in che senso dici di mettere tutto in un ciclo?
mi fai un esempio.?

freeteo Profilo | Guru

Intendo dire che magari metti un ciclo di richiesta di selezione cartella finchè non ti premono "annulla" e quindi la selezione è nulla:

bool annullato = false; while(!annullato) { FolderBrowserDialog d = new FolderBrowserDialog(); annullato = string.IsNullOrEmpty(d.SelectedPath); .... }
era una possibilità genere per far scegliere più cartelle di seguito...

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5