c#之OpenFileDialog解讀(打開文件對話框)
c# OpenFileDialog(打開文件對話框)
OpenFileDialog是什么?
OpenFileDialog是一個類,實例化此類可以設(shè)置彈出一個文件對話框。
比如:我們發(fā)郵件時需要上傳附件的時候,就會彈出一個讓我們選擇文件的對話框,我們可以根據(jù)自己的需求,自行設(shè)置一些對話框的屬性,那么怎么使用它呢?
OpenFileDialog的一些常用屬性
1.title
title 屬性屬性可以設(shè)置文件對話框的標題
OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "請選擇圖片";
2.InitialDirectory
此屬性可以設(shè)置打開文件對話框的默認路徑,有兩種方式供用戶選擇:
- 一種是設(shè)置一個絕對路徑
- 一種是設(shè)置系統(tǒng)提供的特殊路徑
1)設(shè)置絕對路徑
ofd.InitialDirectory = @"E:\計算機資料\01 C#視頻\基礎(chǔ)實訓4\1110C#基礎(chǔ)\資料\img";
2)設(shè)置系統(tǒng)提供的一些特殊路徑
//這是系統(tǒng)提供的桌面路徑,還可以是其他的路徑:比如文檔、音樂等文件夾 ofd.InitialDirectory = System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
3.Filter
Filter屬性可以過濾要選擇的文件類型,也有兩種方式。
1)過濾不同類型的文件
//過濾不同類型的文件 ofd.Filter = "(*.jpg)|*.jpg|(*.txt)|*.txt";
2)過濾同種類型的文件
ofd.Filter = "(*.jpg;*.txt)|*.jpg;*.txt";
通過對比可以發(fā)現(xiàn)這是兩種不同的方式,其實一個括號就是一項,不管括號中有幾種文件類型。
4.Multiselect
此屬性表示是否可以選擇多個文件,默認是不可以多選的。
//表示可以多選 ofd.Multiselect = true;
5.顯示文件對話框
1)只是單純的顯示對話框,實際上沒有什么作用
ofd.ShowDialog();
2)常用第二種,當我們按下哪個按鈕,對應的發(fā)生什么事件
if (ofd.ShowDialog() == DialogResult.OK) { string[] strNames = ofd.SafeFileNames; //將文件名添加到 listbox 中 for (int i = 0; i < strNames.Length; i++) { listBox1.Items.Add(strNames[i]); } }
6.FileName
此屬性返回選中文件的路徑。適用選中一個文件,如果是多個文件就用 FileNames,用數(shù)組接收。
7.SafeFileName
此屬性只返回選中文件的文件名+后綴名。如果選中多個文件就用 SafeFileNames。
c#使用OpenFileDialog獲取文件路徑
public void ButtonOpen_Click(object sender, EventArgs e) { OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.InitialDirectory="C:\\"; //打開對話框后的初始目錄 fileDialog.Filter = "文本文件|*.txt|所有文件|*.*"; fileDialog.RestoreDirectory = false; //若為false,則打開對話框后為上次的目錄。若為true,則為初始目錄 if (fileDialog.ShowDialog() == DialogResult.OK) FilePath.Text = System.IO.Path.GetFullPath(fileDialog.FileName);//將選中的文件的路徑傳遞給TextBox “FilePath” }
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#發(fā)送和接收HTTP請求類HttpWebRequest的用法
這篇文章主要給大家介紹了關(guān)于C#發(fā)送和接收HTTP請求類HttpWebRequest用法的相關(guān)資料,C#中的HttpWebRequest是一個用于發(fā)送HTTP請求的類,它可以用于向Web服務器發(fā)送GET、POST、PUT、DELETE等請求,需要的朋友可以參考下2024-06-06