C#OpenFileDialog的使用

       Windows 窗体的 OpenFileDialog(打开文件对话框)组件是一个预先配置的对话框。它与 Windows 操作系统的“打开文件”对话框相同。该控件是从 CommonDialog 类继承的。在基于 Windows 的应用程序中,可该组件实现简单的文件选择,而不必配置自己的对话框。利用标准的 Windows 对话框,可以创建用户所熟悉的应用程序界面。

一、OpenFileDialog 组件的主要属性包括:


  1 、 Title 属性:获取或设置文件对话框标题。默认值为空字符串("")。
如果标题为空字符串,系统将使用默认标题“打开”。


  2 、 Multiselect 属性:获取或设置一个值,该值指示对话框是否允许选择多个文件。
  如果对话框允许同时选定多个文件,则为 true;反之,则为 false。默认值为 false。使用 FileNames 属性可访问选定文件名的完整列表。


  3、  ShowReadOnly 属性:获取或设置一个值,该值指示对话框是否包含只读复选框。
如果对话框包含只读复选框,则为 true;否则为 false。默认值为 false。


  4、  ReadOnlyChecked 属性:获取或设置一个值,该值指示是否选定只读复选框。
  如果选中了只读复选框,则为 true;反之,则为 false。默认值为 false。


  5、  Filter 属性:获取或设置当前文件名过滤字符串,该字符串决定对话框的“文件类型”框中出现的选择内容。
  对于每个过滤选项,过滤字符串都包含过滤条件说明,后接一垂直线条(|)和过滤模式。不同过滤选项的字符串由垂直线条隔开。

      例如:"Text files (*.txt)|*.txt|All files (*.*)|*.*"。如果要将多个过滤模式添加到过滤条件中,可用分号将文件类型分隔开,例如:

  "Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.*"使用 FilterIndex 属性设置第一个显示给用户的过滤选项。

  6、  FilterIndex 属性:获取或设置文件对话框中当前选定过滤条件的索引。默认值为 1。第一个过滤条目的索引值为 1。


  7、  FileName 属性:获取或设置一个包含在文件对话框中选定的文件名的字符串。也就是在对话框中选择的文件名,默认值为空字符串("")。
  文件名既包含文件路径也包含扩展名。如果未选定文件,将返回空字符串。


  8、 FileNames 属性:获取对话框中所有选定文件的文件名。
  属性值是一个 String 类型数组。每个文件名都既包含文件路径又包含文件扩展名。如果未选定文件,该方法将返回空数组。

      9、 InitialDirectory属性:获取初始化路径。

二、OpenFileDialog组件的主要方法包括:


  1 、ShowDialog() 方法:在运行时显示对话框。


  2、  OpenFile() 方法:打开用户选定的具有只读权限的文件,该文件由 FileName 属性指定。
  使用该方法可从对话框以只读方式快速打开文件。


  下面的实例简单介绍了如何使用打开文件对话框(OpenFileDialog)组件来选择文件的编程技术,具体步骤如下:

      (1)  启动VS2012,新建一个C# Windows应用程序项目

      (2)  在程序设计窗体中添加两个个Label控件,分别设置其Text属性为“FilePath”、“FileName”;再添加一个TextBox控件,保留其默认属性即可;再添加一个Button控件,设置其Text属性为“Open Files”。调整窗体和控件的大小以适合窗口。如下所示:

      (3)  为Button控件(Open Files)的鼠标单击(Click)事件添加如下代码:

 1 OpenFileDialog openfiledialog = new OpenFileDialog();//声明并初始化openfiledialog类
 2             openfiledialog.InitialDirectory = @"E:";//设置文件打开初始目录为E盘
 3             openfiledialog.Title = "打开文本文件";//设置打开文件对话框标题
 4             openfiledialog.Filter = "All Files(*.*)|*.*|txt Files(*.txt)|*.txt";//设置文件过滤类型
 5             openfiledialog.FilterIndex = 2;//根据文件类型索引设置文件过滤类型
 6             openfiledialog.RestoreDirectory = true;//设置对话框是否记忆之前打开的目录
 7             if (openfiledialog.ShowDialog() == DialogResult.OK)//当点击文件对话框的确定按钮时打开相应的文件
 8             {                                                  //并执行如下语句块
 9                 tbfilepath.Text = openfiledialog.FileName;//获取选择文件的完整路径名(含文件名称)
10                 tbfilename.Text = tbfilepath.Text.Substring(tbfilepath.Text.LastIndexOf("\")+1);
11             }                                             //获取选择文件的完整文件名(不含路径)
View Code

      (4)运行实例程序,单击“选择文件”按钮将弹出您熟悉的Windows“打开”对话框,选择文件后,文件名称和文件路径将显示在窗体的文本框中。

      

原文地址:https://www.cnblogs.com/dyf96966/p/5340436.html