ไฟล์หลายนามสกุลใน 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
ฉันขอแนะนำให้ใส่ตัวเลือก "ทั้งหมด" ก่อนเนื่องจากสิ่งที่ดูเหมือนจะเป็นค่าเริ่มต้น
John Grabanski

อย่าใส่|ในส่วนคำอธิบายเพราะจะแยกวิเคราะห์พลาด
CAD bloke

62

นี่มาจากตัวอย่างMSDN :

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

ดังนั้นสำหรับกรณีของคุณ

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

วิธีนี้มีความสวยงามถูกต้องและเป็นที่ต้องการ นี่ควรเป็นโซลูชันที่ได้รับการโหวตมากที่สุด
Dr. 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";
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.