SaveFileDialog过滤器中有多种类型

问题描述

| 在我的SaveFileDialog中,过滤器中有多种类型,但是在查看对话框时,如果我选择过滤器以查看目录中该类型的文件,则只能看到第一个和最后一个过滤器的文件
    bool save;
    SaveFileDialog dlg = new SaveFileDialog();
    dlg.FileName = \"*\";
    dlg.DefaultExt = \"bmp\";
    dlg.ValidateNames = true;

    dlg.Filter = \"Bitmap Image (.bmp)|*.bmp|Gif Image (.gif)|*.gif |JPEG Image (.jpeg)|*.jpeg |Png Image (.png)|*.png |Tiff Image (.tiff)|*.tiff |Wmf Image (.wmf)|*.wmf\";
    save = (bool)dlg.ShowDialog();

    if (save)
    {
        SaveImage(dlg.FileName);
    }
我可以看到.bmp和.wmf类型的文件 如果更改过滤器的顺序,则始终只能看到第一个和最后一个。     

解决方法

在文件类型后删除空格:
dlg.Filter = \"Bitmap Image (.bmp)|*.bmp|Gif Image (.gif)|*.gif|JPEG Image (.jpeg)|*.jpeg|Png Image (.png)|*.png|Tiff Image (.tiff)|*.tiff|Wmf Image (.wmf)|*.wmf\";
    ,
FilterIndex
... DefaultExt仅在保存期间使用。 索引是从1开始的,因此,如果要选择第二个选项,则:
dlg.FilterIndex = 2;
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...