版权声明:我不生产代码,我只是代码的搬运工。 https://blog.csdn.net/qq_43307934/article/details/86363393
增加using引用 System.Windows.Forms
1、打开文件对话框
在事件中增加如下代码:
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Excel文件(*.xls;*.xlsx)|*.xls;*.xlsx|所有文件|*.*";//文件类型
ofd.FilterIndex = 2;//默认选择上面类型中的第几个,从左到右,从1开始。
ofd.Title = "对话框的标题";//对话框左上角标题
ofd.InitialDirectory = @"D:\";//默认打开的文件夹
ofd.Multiselect = true;//是否允许选中多个文件
ofd.ValidateNames = true;//验证用户输入是否是一个有效的Windows文件名。
ofd.CheckPathExists = true;//验证路径有效性。
ofd.CheckFileExists = true;//验证文件有效性。
ofd.ShowHelp = true;//出现一个帮助按钮,自定义帮助信息。
if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string strFileName = ofd.FileName;
//其他代码
}
其中:
Filter:设置文件过滤器用于打开文件对话框中显示特定类型的文件。
‘|’分割的两个,一个是注释,一个是真的Filter。显示出来的是那个注释。如果要一次显示多中类型的文件,用分号分开
Open1.Filter="图片文件(*.jpg,*.gif,*.bmp)|*.jpg;*.gif;*.bmp";
格式是:提示1|类型1|提示2|类型2…
过滤器前后不允许有空格。
ShowHelp:出现一个帮助按钮,自定义帮助信息。通过HelpRequest事件添加一个处理程序。
在ShowDialog()之前加上:
ofd.ShowHelp = true;
ofd.HelpRequest += new EventHandler(ofd_HelpRequest);
然后定义事件:
private void ofd_HelpRequest(object sender, EventArgs e)
{
MessageBox.Show("我自己定义的帮助信息:)");
}
Multiselect:可以使打开文件对话框打开多个文件。
如果启用了这个属性,在获取文件地址信息时,需要对FileNames进行遍历。
例如:
string strFileName;
foreach (var item in ofd.FileNames)
{
strFileName = item;
}
//其他代码
2、选择文件夹
FolderBrowserDialog folder = new FolderBrowserDialog();
folder.Description = "选择所有文件存放目录";
if (folder.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string sPath = folder.SelectedPath;
}
3、直接打开某路径下的文件或者文件夹
例如:打开C盘Windows目录下的资源管理器。
System.Diagnostics.Process.Start("explorer", @"C:\Windows");