Filter 属性 赋值为一字符串 用于过滤文件类型;
字符串说明如下:
‘|’分割的两个,一个是注释,一个是真的Filter,显示出来的是那个注释。如果要一次显示多中类型的文件,用分号分开。
如:
Open1.Filter="图片文件(*.jpg,*.gif,*.bmp)|*.jpg;*.gif;*.bmp";
则过滤的文件类型为 “|”号 右边的 *.jpg;*.gif;*.bmp 三种类型文件,在OpenDialog/SaveDialog中显示给用户看的文件类型字符串则是 :“|”号 左边的 图片文件(*.jpg,*.gif,*.bmp)。
再如:
Open1.Filter="图像文件(*.jpg;*.jpg;*.jpeg;*.gif;*.png)|*.jpg;*.jpeg;*.gif;*.png";
附上一小段代码:
/// <summary>
/// 选择要保存Excel的文件路径
/// </summary>
/// <param name="saveFileName">文件完整路径</param>
/// <returns>布尔值,判断文件保存路径是否可用</returns>
public bool GetExcelDestination(ref string saveFileName)
{
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.DefaultExt = "xlsx";
saveDialog.Filter = "Excel 2007文件|*.xlsx|Excel 99-03文件|*.xls";
saveDialog.ShowDialog();
//被点了取消
if (saveDialog.FileName.IndexOf(":") < 0)
{
return false;
}
//模板Excel不存在
if ((!File.Exists(Application.StartupPath.Trim() + @"\templates\template.xlsx")) || (!File.Exists(Application.StartupPath.Trim() + @"\templates\template.xls")))
{
MessageBox.Show("模板Excel不存在!请确保文件安装目录" + Application.StartupPath.Trim() + "下的templates文件夹里的template.xlsx文件存在!");
return false;
}
//如果选择保存的文件路径是模板文件,则禁止保存
if (saveDialog.FileName == Application.StartupPath.Trim() + @"\templates\template.xlsx" || saveDialog.FileName == Application.StartupPath.Trim() + @"\templates\template.xls")
{
MessageBox.Show("请不要选择模板Excel作为导出文件!");
return false;
}
//如果对方机子未安装Excel
Excel._Application myExcel = new Excel.Application();
if (myExcel == null)
{
MessageBox.Show("无法创建Excel对象,可能您的机子未安装Excel!");
return false;
}
//错误检测全通过后
saveFileName = saveDialog.FileName;
return true;
}