На самом деле вам нужно создать диалоговую форму.
Существует предопределенный диалог для выбора папки в проекте Windows Form;Он называется FolderBrowserDialog
, это пример кода для этого:
privatevoid BrowseFolderButton_Click(object sender, EventArgs e) {
FolderBrowserDialog folderDlg = newFolderBrowserDialog();
folderDlg.ShowNewFolderButton = true;
// Show the FolderBrowserDialog.
DialogResult result = folderDlg.ShowDialog();
if (result == DialogResult.OK) {
textBox1.Text = folderDlg.SelectedPath;
Environment.SpecialFolder root = folderDlg.RootFolder;
}
}
Вы можете установить путь по умолчанию, используя этот код:
folderDlg .SelectedPath = //myFolder;
Если вы не хотите использовать это значение по умолчанию,Вы можете создать свой собственный диалог.В форме 2:
public partial class Form2:Form
{
public string SelectedPath {get; set;}
private SelectPath_Click(object sender, EventArgs e)
{
// if path is a valid path {
SelectedPath = txtBoxPath.text;
this.DialogResult = DialogResult.OK;
this.Close();
// } else { CloseForm or Display an Error or ... }
}
}
довольно ясно, что я добавил кнопку во вторую форму.Вы можете выбрать другой путь.
вы можете использовать свои коды, такие как FolderBrowserDialog ( SampleCode ):
Form2 FolderDialog = new Form2();
if (FolderDialog.ShowDialog() == DialogResult.OK)
{
/// Set New Path
Foo.Text = FolderDialog.SelectedPath;
}
else
{
// User Didn't selected a Valid path or he closed your form without response.
}