C# OpenFileDialog
OpenFileDialog 用于浏览并打开文件,在Windows Forms中使用,表现为标准的Windows对话框。
实例:
1.新建Windows Form Application

2.添加OpenFileDialog
打开Toolbox,找到并双击OpenFileDialog:

可以在窗口下方看到添加到OpenFileDialog.
3.添加按钮和事件
OpenFileDialog对话框需要通过事件激活,添加一个Button到Form中,双击Button以添加事件,事件代码如下:
using System;
using System.Windows.Forms; namespace OpenFileDialog {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
} private void button1_Click(object sender, EventArgs e) {
// show the dialog and get result
DialogResult result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK)
{
}
Console.WriteLine(result);
}
}
}
4.读取文件
可以通过OpenFileDialog读取文件,修改按钮的点击事件,具体代码如下:
using System;
using System.IO;
using System.Windows.Forms; namespace OpenFileDialog {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
int size = -1;
// show the dialog and get result
DialogResult result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK)
{
string file = openFileDialog1.FileName;
try
{
string text = File.ReadAllText(file);
size = text.Length;
}
catch (Exception)
{
throw;
}
}
Console.WriteLine(result);
Console.WriteLine(size); // 文件大小
}
}
}
编译运行,点击button1,会显示OpenFileDialog,然后验证DialogResult,通过File.ReadAllText读写文件,然后获得文件大小。
5. 属性
| 属性 | 说明 |
| AddExtension | 扩展名是否添加到文件名,默认为真,如果想自动修改文件扩展名,可将其设置为false。 |
| AutoUpgradeEnabled | 用于获得Vista风格的打开文件对话框,默认为true,推荐使用。 |
| DefaultExt | 默认文件扩展名,如果文件扩展名没有指定,则自动添加该扩展 |
| DereferenceLinks | 从对话框返回路径前是否解引用快捷键 |
| FileName | 在对话框最开始显式的文件名 |
| InitialDirectory | 对话框的初始目录 |
| Multiselect | 是否一次可选择多个文件,可通过SHIFT或CTRL键进行多项选择 |
6.Filter
Filters能帮助有效的筛选文件,OpenFileDialog支持文件名过滤,可用*代表任意字符。
Filter:
用于指定过滤器,如:“C# files|*.cs”,此时只显式以”.cs”结尾的文件
FilterIndex:
用于指定默认Filter,其Index为1.其后的filter的Index依次递增
ValidateNames:
Windows文件系统不允许文件名包含特定字符如”*”,该选项一般为True。
7.ReadOnly
OpenFileDialog部分属性可允许指定文件是否为只读。可以显式read-only checkbox。大多时候用不着.
ReadOnlyChecked:
用于设置”read only”复选框的值,仅当”ShowReadOnly”设置为True才可见。
ShowReadOnly:
“Read-only”复选框是否可见。
C# OpenFileDialog的更多相关文章
- 1、怎样设置C#OpenFileDialog(文件选择窗体)的指定路径、文件格式等属性(设置打开默认路径、文件格式、窗体显示文本)
C#的OpenFileDialog的常用属性设置 1.设置属性 1)设置弹出的指定路径(绝对路径.相等路径) 2)设置标题 3)设置文本格式 2.打开方式1(绝对路径) 2.1) 打开的路径
- Dev 关于用openFileDialog控件上传图片的问题
1. OpenFileDialog控件有以下基本属性 InitialDirectory 对话框的初始目录 Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.tx ...
- C# winform OpenFileDialog MessageBox
1.弹出窗体选择本地文件-OpenFileDialog OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Tit ...
- OpenFileDialog获取文件名和文件路径问题
OpenFileDialog获取文件名和文件路径问题(转) 转自:http://blog.sina.com.cn/s/blog_7511914e0101cbjn.html System.IO.Path ...
- 使用OpenFileDialog会更改默认程序目录
这个问题可能只有在特定的程序中会发现:当我们在程序中使用相对路径时是依赖于当前目录的.所以在使用类似代码: XElement rootNode = XElement.Load(@"zips/ ...
- OpenFileDialog - 设置 - Filter 笔记
using (OpenFileDialog fileSelectDialog = new OpenFileDialog()) { fileSelectDialog.Multiselect = fals ...
- C#的OpenFileDialog和SaveFileDialog的常见用法(转)
OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = ...
- OpenFileDialog使用方法
OpenFileDialog基本属性 AddExtension 控制是否将扩展名自动添加到文件名上 CheckFileExists 指示用户指定不存在的文件时是否显示警告 CheckPathExist ...
- C# OpenFileDialog和PictrueBox
string resultFile = ""; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFile ...
随机推荐
- [转]Linux环境下查看线程数的几种方法
1.cat /proc/${pid}/status 2.pstree -p ${pid} 3.top -p ${pid} 再按H,或者直接输入 top -bH -d 3 -p ${pid} top ...
- jquery 整理之一
1.选择器: jQuery 属性选择器 jQuery 使用 XPath 表达式来选择带有给定属性的元素. $("[href]") 选取所有带有 href 属性的元素. $(&quo ...
- OpenCV图像处理篇之边缘检测算子
OpenCV图像处理篇之边缘检测算子 转载: http://xiahouzuoxin.github.io/notes/ 3种边缘检测算子 一阶导数的梯度算子 高斯拉普拉斯算子 Canny算子 Open ...
- CentOS生产机器禁止ROOT远程SSH登录
方法一 很多站长拥有linux主机,不管是虚拟机还是实体机,一般我们远程连接的时候,都是用的ssh(SecureShell建立在应用层和传输层基础上的安全协议). 它默认的端口22,默认使用root也 ...
- js 字符串转换为数值
原帖地址:http://www.cnblogs.com/jenney-qiu/archive/2012/02/27/2369848.html 使用parseInt()你可以从字符串中获取数值,该方法接 ...
- Makefile所有内嵌函数
一.文本处理函数以下是GNU make内嵌的文本(字符串)处理函数.1 $(subst FROM,TO,TEXT) 函数名称:字符串替换函数—subst. 函数功能:把字串“TEXT”中的 ...
- java学习笔记(二)之数据部分
数据类型 java数据类型 基本数据类型 数值型 整型byte/short/int/long 浮点型/double/float 字符型char 布尔型boolean 取值true f ...
- POJ 2318 TOYS(计算几何)
题目大意:有一个矩形盒子,盒子里会有一些木块线段,并且这些线段是按照顺序给出的,有n条线段,把盒子分层了n+1个区域,然后有m个玩具,这m个玩具的坐标是已知的,问最后每个区域有多少个玩具 解题思路:因 ...
- NeHe OpenGL教程 第十七课:2D图像文字
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 基本 linux命令
rm rf * 递归删除 ln -s 源 目标 |管道命令 把上一个命令的结果交给 | 的后面的命令处理 文件内容查阅 cat 由第一行开始显示文件内容 tac 从最后一行开始显示 nl 显示的时候输 ...