有没有一种方法可以使用对话框窗口获取文件夹路径而不是文件名?
虽然这是一个老问题,
但我不喜欢那个丑陋的FolderBrowserDialog
,所以这里有一个对我有效的技巧,它使用了SaveFileDialog
。
// Prepare a dummy string, thos would appear in the dialog
string dummyFileName = "Save Here";
SaveFileDialog sf = new SaveFileDialog();
// Feed the dummy name to the save dialog
sf.FileName = dummyFileName;
if(sf.ShowDialog() == DialogResult.OK)
{
// Now here's our save folder
string savePath = Path.GetDirectoryName(sf.FileName);
// Do whatever
}
// Bring up a dialog to chose a folder path in which to open or save a file.
private void folderMenuItem_Click(object sender, System.EventArgs e)
{
var folderBrowserDialog1 = new FolderBrowserDialog();
// Show the FolderBrowserDialog.
DialogResult result = folderBrowserDialog1.ShowDialog();
if( result == DialogResult.OK )
{
string folderName = folderBrowserDialog1.SelectedPath;
... //Do your work here!
}
}
SaveFileDialog
默认情况下为假(false)。 - C.Evenhuissf.Filter = "Directory | directory";
来隐藏所有文件,以免让用户看到。 - laurentIsRunning