Più estensioni di file in OpenFileDialog


127

Come posso utilizzare più estensioni di file all'interno di un gruppo utilizzando OpenFileDialog? Ho Filter = "BMP|*.bmp|GIF|*.gif|JPG|*.jpg|PNG|*.png|TIFF|*.tiff" e voglio creare gruppi quindi JPG sono * .jpg e * .jpeg, TIFF sono * .tif e * .tiff e anche "Tutti i tipi di grafica"? Come lo posso fare?

Risposte:


233

Prova :

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

Quindi fai un altro giro di copia / incolla di tutte le estensioni (unite insieme ;come sopra) per "Tutti i tipi di grafica":

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

7
Suggerirei di mettere prima l'opzione "TUTTI", in quanto sembra essere l'impostazione predefinita.
John Grabanski

Non inserire un |nella parte della descrizione, verrà analizzato in modo errato.
CAD bloke

62

Questo proviene dall'esempio MSDN :

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

Quindi per il tuo caso

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

Questa soluzione è più elegante, corretta e desiderata. Questa dovrebbe essere la soluzione più votata.
Dr. Cogent

1

Sulla base della prima risposta, ecco le opzioni di selezione delle immagini complete:

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";
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.