SaveFileDialog设置默认路径和文件类型?

use*_*438 41 .net c# winforms

我正在使用SaveFileDialog.SaveFile.如何将其设置为默认(操作系统)驱动器号并限制选项仅显示.BIN为文件扩展名?

我尝试在MSDN上阅读文档,但我对此非常新,说实话,我发现它们有时不清楚.

Mar*_*rio 94

SaveFileDialog控制不会做任何储蓄的.它所做的只是为您提供一个方便的界面来实际显示Windows的默认文件保存对话框.

1)将属性设置为InitialDirectory您想要的驱动器以显示其他默认值.想想可能有不同布局的其他计算机.默认情况下,Windows将保存上次使用的目录并再次显示.

2)这是在控制之外处理的.您必须检查对话框的结果,然后自己进行保存(例如,写入文本或二进制文件).

就像一个简单的例子(有其他方法可以做到). savefile是一种控制类型SaveFileDialog

SaveFileDialog savefile = new SaveFileDialog(); 
// set a default file name
savefile.FileName = "unknown.txt";
// set filters - this can be done in properties as well
savefile.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*";

if (savefile.ShowDialog() == DialogResult.OK)
{
    using (StreamWriter sw = new StreamWriter(savefile.FileName))
        sw.WriteLine ("Hello World!");
}
Run Code Online (Sandbox Code Playgroud)

  • 只需更换它.格式相当简单 - 只需以下字符串"syntax"的几个部分:``display text | filter |"`例如,您要编写的bin文件:`"BIN files |*.bin |"`.实际的过滤器可以是你用cmd的`dir`命令使用的任何文件掩码.要限制它,只需提供一个过滤器描述,但如果需要可以添加更多(最多256个iirc). (2认同)

adt*_*adt 5

Environment.GetSystemVariable(“%SystemDrive%”); 将提供已安装的驱动器操作系统,您可以将过滤器设置为saveialog 获取C#保存对话框的文件路径