OpenFileDialog中的多个文件扩展名


127

如何在一组内使用多个文件扩展名OpenFileDialog?我已经Filter = "BMP|*.bmp|GIF|*.gif|JPG|*.jpg|PNG|*.png|TIFF|*.tiff" 创建了组,因此JPG是* .jpg和* .jpeg,TIFF是* .tif和* .tiff以及“所有图形类型”吗?我怎样才能做到这一点?

Answers:


233

尝试

Filter = "BMP|*.bmp|GIF|*.gif|JPG|*.jpg;*.jpeg|PNG|*.png|TIFF|*.tif;*.tiff"

然后;对“所有图形类型” 的所有扩展名(如上所述连接在一起)进行另一轮复制/粘贴:

Filter = "BMP|*.bmp|GIF|*.gif|JPG|*.jpg;*.jpeg|PNG|*.png|TIFF|*.tif;*.tiff|"
       + "All Graphics Types|*.bmp;*.jpg;*.jpeg;*.png;*.tif;*.tiff"

7
我建议将“ ALL”选项放在第一位,因为这似乎是默认设置。
John Grabanski '16

不要|在说明部分中放入“ a ”,否则会解析错误。
CAD bloke

62

这来自MSDN示例:

(*.bmp, *.jpg)|*.bmp;*.jpg

所以对于你的情况

openFileDialog1.Filter = "JPG (*.jpg,*.jpeg)|*.jpg;*.jpeg|TIFF (*.tif,*.tiff)|*.tif;*.tiff"

该解决方案更加优雅,正确和理想。这应该是最受好评的解决方案。
Cogent博士

1

根据第一个答案,这里是完整的图像选择选项:

Filter = @"|All Image Files|*.BMP;*.bmp;*.JPG;*.JPEG*.jpg;*.jpeg;*.PNG;*.png;*.GIF;*.gif;*.tif;*.tiff;*.ico;*.ICO
           |PNG|*.PNG;*.png
           |JPEG|*.JPG;*.JPEG*.jpg;*.jpeg
           |Bitmap(.BMP,.bmp)|*.BMP;*.bmp                                    
           |GIF|*.GIF;*.gif
           |TIF|*.tif;*.tiff
           |ICO|*.ico;*.ICO";
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.