使用C#选择文件夹路径

时间:2013-12-25 09:19:18

标签: c# .net wpf file openfiledialog

我有一个WPF应用程序,我有这个方法:

 public static string getFile(List<string> extensions)
 {
     Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();
     string ext = "files (", filter = "";
     foreach (string s in extensions)
     {
        ext += s + ",";
        filter += "*." + s + ";";
     }
     ext += ")";
     dlg.Filter =ext+"|"+ filter;
     Nullable<bool> result = dlg.ShowDialog();
     if (result == true)
     {
        return dlg.FileName;
     }
     else return null;
  }

我需要添加另一个简单的方法,它返回一个文件夹路径,我将在其中保存新文件。

  1. 我该怎么做?
  2. 最好的方法是什么?

2 个答案:

答案 0 :(得分:4)

SaveFileDialog就是您所需要的。来自 MSDN 链接:

// Configure save file dialog box
Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();
dlg.FileName = "Document"; // Default file name
dlg.DefaultExt = ".text"; // Default file extension
dlg.Filter = "Text documents (.txt)|*.txt"; // Filter files by extension 

// Show save file dialog box
Nullable<bool> result = dlg.ShowDialog();

// Process save file dialog box results 
if (result == true)
{
    // Save document 
    string filename = dlg.FileName;
}

答案 1 :(得分:1)

我建议您查看免费Ookii Dialogs for WPF。我过去曾在商业项目中使用它,而且它总能很好地运作。显然对WPF的本机支持,但也有很多自定义选项,并在不同版本的Windows中提供更高的一致性。