OpenFileDialog.Che ne dici della “finestra di dialogo Specifica directory”?
-
09-06-2019 - |
Domanda
In un campo del percorso file, voglio acquisire il percorso della directory come:
textbox1.Text = directory path
Chiunque?
Soluzione 2
Bene, sto usando VS 2008 SP1.Questo è tutto ciò di cui ho bisogno:
private void button1_Click(object sender, EventArgs e)
{
FolderBrowserDialog profilePath = new FolderBrowserDialog();
if (profilePath.ShowDialog() == DialogResult.OK)
{
profilePathTextBox.Text = profilePath.SelectedPath;
}
else
{
profilePathTextBox.Text = "Please Specify The Profile Path";
}
}
Altri suggerimenti
Esiste una classe FolderBrowserDialog che puoi utilizzare se desideri che l'utente selezioni una cartella.
http://msdn.microsoft.com/en-us/library/system.windows.forms.folderbrowserdialog.aspx
DialogResult result = folderBrowserDialog1.ShowDialog();
if (result.Equals(get_DialogResult().OK)) {
textbox1.Text = folderBrowserDialog1.get_SelectedPath();
}
Se tutto ciò che desideri è ottenere la directory da un percorso completo, puoi farlo:
textbox1.Text = Path.GetDirectoryName(@"c:\windows\temp\myfile.txt");
Ciò imposterà la proprietà Text su "c:\windows emp\"
Se non vuoi una finestra di dialogo terribile e non facile da usare*, prova Ookii.Dialogs o vedere altre risposte a Come si configura un OpenFileDialog per selezionare le cartelle?.L'unico aspetto negativo che vedo in Ookii è che richiede .NET 4 Full, non solo il profilo client.Ma la fonte è inclusa nel download, quindi lavorerò su quello.Peccato che la licenza non sia LGPL o simili...
Guarda anche: Finestra di messaggio WinForms con pulsanti testuali
*Questo è l'aspetto di FolderBrowserDialog: