標籤:檔案名稱 void 對話 自訂 篩選器 end jpeg click blog
OpenFileDialog對話方塊的Filter屬性說明:
首先說明一個樣本,分析一下Filter屬性的構成:“ Excel檔案|*.xls ”,前面的“Excel檔案”成為標籤,是一個可讀的字串,可以自定定義,“|*.xls”是篩選器,表示篩選檔案夾中尾碼名為.xls的檔案,“*”表示匹配Excel檔案名稱的字串。
OK,下面說說我們經常要用到的幾種情況:
1. Filter是null或Empty,表示顯示所有檔案,並總會顯示檔案夾
2. 需要篩選特定的檔案,設定Filter屬性為“標籤|*.尾碼”,按照這個格式設定,標籤可以自訂,是字串即可,尾碼表示你需要篩選的檔案尾碼,例如“.txt、.doc”等
3. 需要篩選多種檔案,比方說需要篩選圖片檔案,但是圖片檔案的尾碼有幾種,例如jpg、png、gif等,當需要同時篩選這些檔案,設定Filter屬性為“標籤|*.jpg;*.png;*.gif”,注意:只是在篩選器中多添加了幾個尾碼,不同尾碼之間使用分號隔開
4.當需要篩選多種檔案,但是不同時將它們全部列出來,只有使用者分別通過下拉式清單選擇需要的檔案類型時,才進行篩選。這種情況下只需要多設定幾個篩選器即可,filter屬性設定如下:“標籤1|*.jpg|標籤2|.png|標籤3|.gif”。注意:不同的篩選器之間使用“|”分隔即可。
Filter屬性類似與Regex,試用*表示匹配檔案名稱的字元,使用“.尾碼”匹配檔案的尾碼名,通過串連尾碼(試用;號將需要的尾碼分開)表示同時篩選所有的符合尾碼的檔案,通過“|”串連不同的篩選器表示通過使用者選擇尾碼名稱來進行檔案篩選
private void btnupload_Click(object sender, EventArgs e) { using (OpenFileDialog open = new OpenFileDialog()) { open.Multiselect = false; open.Title = "開啟檔案"; open.Filter = "圖片|*.jpg;*.png;*.gif;*.jpeg;*.bmp"; if (open.ShowDialog() == DialogResult.OK) { } } }
C# 檔案過濾器filter