我正在尝试复制标准保存文件进程,如果已经存在具有必要文件扩展名的文件,则会在SaveFileDialog
中预先选择。在我的程序中,我使用SaveFileDialog
来允许用户选择系统上文件的路径。保存后,它将自动打开上次保存文件所在的路径,但用户必须重新选择它。
以下是我认为这样的内容会在我的代码中发挥作用的地方:
Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();
dlg.FileName = ".cct"; //The file extension
Nullable<bool> result = dlg.ShowDialog(); //Lets user select path
//**I'm guessing that the "pre-select" operation I am talking about
//would go here
directory = Path.GetDirectoryName(dlg.FileName); //Directory = File path on system
我查看了CheckFileExists
property,并说它“获取或设置一个值,指示如果用户指定的文件名不存在,文件对话框是否显示警告。”所以看起来它更关注于检查用户是否输入新文件名。
如何保存以前保存的具有相同扩展名的文件,如果在保存时找到,则SaveFileDialog
中会突出显示或选择
答案 0 :(得分:1)
你可以做几件事。
您可以通过设置dlg.RestoreDirectory = true
来恢复用户上次保存的路径。
在显示对话框之前设置FileName
,它会自动显示该文件夹并使用dlg.FileName
http://msdn.microsoft.com/en-us/library/microsoft.win32.savefiledialog(v=vs.110).aspx