Кілька розширень файлів у OpenFileDialog


127

Як я можу використовувати декілька розширень файлів у межах однієї групи за допомогою OpenFileDialog? У мене є Filter = "BMP|*.bmp|GIF|*.gif|JPG|*.jpg|PNG|*.png|TIFF|*.tiff" і я хочу створити групи, щоб JPG були * .jpg і * .jpeg, TIFF - * .tif і * .tiff, а також "Усі графічні типи"? Як я можу це зробити?

Відповіді:


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
Я б запропонував спочатку поставити варіант "ВСІ", як те, що здається за замовчуванням.
Джон Грабанський

Не ставте |описову частину, вона пропустить її аналіз.
CAD блокується

62

Це з зразка MSDN :

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

Тож для вашого випадку

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

Це рішення є більш елегантним, правильним і бажаним. Це має бути найголовнішим рішенням.
Доктор Когент

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";
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.