C# winform選擇檔案、選擇資料夾、開啟檔案
C# winform選擇檔案、選擇資料夾、開啟檔案
文章來自部落格園友,這裡只是做一下筆記。
來源:https://www.cnblogs.com/liuqifeng/p/9149125.html
一、選擇檔案用OpenDialog
OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;//該值確定是否可以選擇多個檔案 dialog.Title = "請選擇資料夾"; dialog.Filter = "所有檔案(*.*)|*.*"; if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string file = dialog.FileName; }
Filter 屬性 賦值為一字串 用於過濾檔案型別;
字串說明如下:
‘|’分割的兩個,一個是註釋,一個是真的Filter,顯示出來的是那個註釋。如果要一次顯示多中型別的檔案,用分號分開。
如:
Open1.Filter="圖片檔案(.jpg,.gif,.bmp)|.jpg;.gif;.bmp";
則過濾的檔案型別為 “|”號 右邊的 .jpg;.gif;.bmp 三種類型檔案,在OpenDialog/SaveDialog中顯示給使用者看的檔案型別字串則是 :“|”號 左邊的 圖片檔案(.jpg,.gif,.bmp)。
再如:
Open1.Filter="影象檔案(.jpg;.jpg;.jpeg;
二、選擇資料夾使用System.Windows.Forms.FolderBrowserDialog
System.Windows.Forms.FolderBrowserDialog dialog =new System.Windows.Forms.FolderBrowserDialog(); dialog.Description = "請選擇Txt所在資料夾"; if (dialog.ShowDialog()==System.Windows.Forms.DialogResult.OK ) { if (string.IsNullOrEmpty(dialog.SelectedPath)) { System.Windows.MessageBox.Show(this, "資料夾路徑不能為空", "提示"); return; } this.LoadingText = "處理中..."; this.LoadingDisplay = true; Action<string> a = DaoRuData; a.BeginInvoke(dialog.SelectedPath,asyncCallback, a); }
三、直接開啟某路徑下的檔案或者資料夾
System.Diagnostics.Process.Start("ExpLore", "C:\window");
C# OpenFileDialog開啟檔案對話方塊(詳解)
一、開啟檔案對話方塊(OpenFileDialog)
1、 OpenFileDialog控制元件的基本屬性
InitialDirectory:對話方塊的初始目錄
Filter: 獲取或設定當前檔名篩選器字串,例如,"文字檔案(.txt)|.txt|所有檔案(.)||."
FilterIndex 在對話方塊中選擇的檔案篩選器的索引,如果選第一項就設為1
RestoreDirectory 控制對話方塊在關閉之前是否恢復當前目錄
FileName:第一個在對話方塊中顯示的檔案或最後一個選取的檔案
Title 將顯示在對話方塊標題欄中的字元
AddExtension 是否自動新增預設副檔名
CheckPathExists 在對話方塊返回之前,檢查指定路徑是否存在
DefaultExt 預設副檔名
DereferenceLinks 在從對話方塊返回前是否取消引用快捷方式
ShowHelp 啟用"幫助"按鈕
ValiDateNames 控制對話方塊檢查檔名中是否不含有無效的字元或序列
2、 OpenFileDialog控制元件有以下常用事件
FileOk 當用戶點選"開啟"或"儲存"按鈕時要處理的事件
HelpRequest 當用戶點選"幫助"按鈕時要處理的事件
可以用以下程式碼來實現上面這個對話方塊:
private void openF
ileDialogBTN_Click(object sender, System.EventArgs e)
{
OpenFileDialog openFileDialog=new OpenFileDialog();
openFileDialog.InitialDirectory="c:\\";//注意這裡寫路徑時要用c:\\而不是c:\
openFileDialog.Filter="文字檔案|*.*|C#檔案|*.cs|所有檔案|*.*";
openFileDialog.RestoreDirectory=true;
openFileDialog.FilterIndex=1;
if (openFileDialog.ShowDialog()==DialogResult.OK)
{
fName=openFileDialog.FileName;
File fileOpen=new File(fName);
isFileHaveName=true;
richTextBox1.Text=fileOpen.ReadFile();
richTextBox1.AppendText("");
}
}
3、 獲取對話方塊的檔名
openfiledialog.FileName //獲取或設定一個包含在檔案對話方塊中選定的檔名字串
openfiledialog.SafeFileName //獲取選定對話方塊中的檔名和副檔名
二、開啟資料夾對話方塊(FolderBrowserDialog)
FolderBrowserDialog dialog = new FolderBrowserDialog();
dialog.Description = "請選擇檔案路徑";
if (dialog.ShowDialog() == DialogResult.OK)
{
savePath = dialog.SelectedPath;
textBox2.Text = savePath;
}