ファイルパスフィールドで、次のようにディレクトリパスをキャプチャします。
textbox1.Text = directory path
誰?
ファイルパスフィールドで、次のようにディレクトリパスをキャプチャします。
textbox1.Text = directory path
誰?
ユーザーにフォルダーを選択させたい場合に使用できるFolderBrowserDialogクラスがあります。
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();
}
フルパスからディレクトリを取得するだけの場合は、次のように実行できます。
textbox1.Text = Path.GetDirectoryName(@"c:\windows\temp\myfile.txt");
これにより、Text-propertyが "c:\ windows \temp\"に設定されます。
私はVS 2008 SP1を使用しています。これが必要なすべてです:
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";
}
}
ひどいユーザーフレンドリーでないダイアログ*が必要ない場合は、Ookii.Dialogsを試すか、OpenFileDialog を構成してフォルダーを選択する方法についての他の回答を参照してください。. Ookii の唯一の欠点は、Client Profile だけでなく .NET 4 Full が必要なことです。しかし、ソースはダウンロードに含まれているので、それに取り組むつもりです。残念ながら、ライセンスは LGPL などではありません...
関連項目:テキストボタン付きの WinForms メッセージボックス
*FolderBrowserDialog は次のようになります。