c#之OpenFileDialog解讀(打開文件對話框)
c# OpenFileDialog(打開文件對話框)
OpenFileDialog是什么?
OpenFileDialog是一個(gè)類,實(shí)例化此類可以設(shè)置彈出一個(gè)文件對話框。
比如:我們發(fā)郵件時(shí)需要上傳附件的時(shí)候,就會彈出一個(gè)讓我們選擇文件的對話框,我們可以根據(jù)自己的需求,自行設(shè)置一些對話框的屬性,那么怎么使用它呢?
OpenFileDialog的一些常用屬性
1.title
title 屬性屬性可以設(shè)置文件對話框的標(biāo)題
OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "請選擇圖片";
2.InitialDirectory
此屬性可以設(shè)置打開文件對話框的默認(rèn)路徑,有兩種方式供用戶選擇:
- 一種是設(shè)置一個(gè)絕對路徑
- 一種是設(shè)置系統(tǒng)提供的特殊路徑
1)設(shè)置絕對路徑
ofd.InitialDirectory = @"E:\計(jì)算機(jī)資料\01 C#視頻\基礎(chǔ)實(shí)訓(xùn)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)這是兩種不同的方式,其實(shí)一個(gè)括號就是一項(xiàng),不管括號中有幾種文件類型。
4.Multiselect
此屬性表示是否可以選擇多個(gè)文件,默認(rèn)是不可以多選的。
//表示可以多選 ofd.Multiselect = true;
5.顯示文件對話框
1)只是單純的顯示對話框,實(shí)際上沒有什么作用
ofd.ShowDialog();
2)常用第二種,當(dāng)我們按下哪個(gè)按鈕,對應(yīng)的發(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
此屬性返回選中文件的路徑。適用選中一個(gè)文件,如果是多個(gè)文件就用 FileNames,用數(shù)組接收。
7.SafeFileName
此屬性只返回選中文件的文件名+后綴名。如果選中多個(gè)文件就用 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é)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Unity實(shí)現(xiàn)ScrollView滑動(dòng)吸附功能
這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)ScrollView滑動(dòng)吸附功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09
基于C#實(shí)現(xiàn)12306的動(dòng)態(tài)驗(yàn)證碼變成靜態(tài)驗(yàn)證碼的方法
這篇文章主要介紹了基于C#實(shí)現(xiàn)12306的動(dòng)態(tài)驗(yàn)證碼變成靜態(tài)驗(yàn)證碼的方法的相關(guān)資料,需要的朋友可以參考下2015-12-12
C#連接db2數(shù)據(jù)庫的實(shí)現(xiàn)方法
本篇文章是對C#連接db2數(shù)據(jù)庫的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
C#中實(shí)現(xiàn)Word文本查找與高亮的多種方法
在處理大量Word文檔時(shí),你是否曾為查找并高亮特定內(nèi)容而煩惱?無論是合同關(guān)鍵詞的審查、報(bào)告中異常數(shù)據(jù)的標(biāo)注,還是教學(xué)資料的重點(diǎn)突出,手動(dòng)操作無疑是耗時(shí)且易出錯(cuò)的,本文將深入探討C#中實(shí)現(xiàn)Word文本查找與高亮的多種方法,需要的朋友可以參考下2026-02-02

