在文件路径字段上,我想捕获目录路径,例如:
1
| textbox1.Text = directory path |
任何人?
如果希望用户选择文件夹,则可以使用FolderFrowserDialog类。
http://msdn.microsoft.com/zh-CN/library/system.windows.forms.folderbrowserdialog.aspx
1 2 3 4
| DialogResult result = folderBrowserDialog1.ShowDialog();
if (result.Equals(get_DialogResult().OK)) {
textbox1.Text = folderBrowserDialog1.get_SelectedPath();
} |
如果您只想从完整路径获取目录,则可以执行以下操作:
1
| textbox1.Text = Path.GetDirectoryName(@"c:\windows\temp\myfile.txt"); |
这会将文本属性设置为" c: windows temp"
好吧,我正在使用VS 2008 SP1。 这就是我所需要的:
1 2 3 4 5 6 7 8 9 10 11 12 13
| 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唯一的缺点是它需要.NET 4 Full,而不仅仅是Client Profile。 但是源包含在下载中,因此我将继续进行工作。 可惜的是该许可证不是LGPL或类似许可证...
另请参阅:带文本按钮的WinForms消息框
*这是FolderBrowserDialog的样子: