1. 程式人生 > 其它 >C# winform選擇檔案、選擇資料夾、開啟檔案

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;

.gif;.png)|.jpg;.jpeg;.gif;*.png";

二、選擇資料夾使用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;
}