谈谈 c# folderbrowserdialog 和 openFileDialog的区别

转载 2013年12月03日 15:51:31

【转载于博客园】cnblogs.com/shuang121/archive/2012/12/01/2797275.html       

在winForm中,我们一般会有这样的需求,选择本机的一个图片或者其他文件进去读取或者其他的操作,也可能回选择某一个文件夹下面的所有图片来操作,winForm中为我们提供了两个控件FolderBrowserDialog和OpenFileDialog

【1】FolderBrowserDialog:用来选择一个文件夹,从而读取这个文件夹下面的所有文件

【2】OpenFileDialog:          用来读取单个文件

下面来看看他们具体的用法

 首先对于这两个控件我们可以从工具箱里托一个过来,也可以直接用代码创建

《1》先看看FolderBrowserDialog的用法,我们拖一个控件到窗体中,然后实现选择,并将路径返回到文本框中

#region 选择pdf文件目录
        private void btnBrowse_Click(object sender, EventArgs e)
        {


            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                txtFile.Text = folderBrowserDialog1.SelectedPath;   
            }
        }

《2》OpenFIleDialog的用法也类似

private void button1_Click(object sender, EventArgs e)
        {
            string Pdfpath = "";
            OpenFileDialog op = new OpenFileDialog();
            op.Filter = "word Files(*.doc)|*.doc|All Files(*.*)|*.*";
            if (op.ShowDialog() == DialogResult.OK)
            {
                Pdfpath = op.FileName;
            }
            else
            {
                Pdfpath = "";
            }
            textBox1.Text = Pdfpath;


        }

【举例1】

 private void btnSaveCSPath_Click(object sender, EventArgs e)
        {
            folderBrowserDialog1.SelectedPath = Application.StartupPath;
            folderBrowserDialog1.ShowDialog();
            if (!string.IsNullOrEmpty(folderBrowserDialog1.SelectedPath))
            {
                txtCSPath.Text = folderBrowserDialog1.SelectedPath;
            }
        }
        private void btnTemplatePath_Click(object sender, EventArgs e)
        {
            openFileDialog1.InitialDirectory = Application.StartupPath;
            openFileDialog1.ShowDialog();
            if (!string.IsNullOrEmpty(openFileDialog1.FileName))
            {
                txtTemplatePath.Text = openFileDialog1.FileName;
            }
        }

【举例2】

private void btnSelectPath_Click(object sender, EventArgs e)
19         {
20             FolderBrowserDialog path = new FolderBrowserDialog();
21             path.ShowDialog();
22             this.txtPath.Text = path.SelectedPath;
23         }
25         private void btnSelectFile_Click(object sender, EventArgs e)
26         {
27             OpenFileDialog file = new OpenFileDialog();
28             file.ShowDialog();
29             this.txtFile.Text = file.SafeFileName;
30         }

 判断是否存在文件夹或文件???

          if (!Directory.Exists(txtCSPath.Text))    //文件夹

            {
                MessageBox.Show("The path '" + txtCSPath.Text + "' is not existing !", "Saving Settings...", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            if (!File.Exists(txtTemplatePath.Text)) //文件
            {
                MessageBox.Show("The template '" + txtTemplatePath.Text + "' is not existing !", "Saving Settings...", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

相关文章推荐

选择文件夹的控件Folderbrowserdialog

.net中的 FolderBrowserDialog 组件也是一个标准的预设对话框(如下图一所示),用户可以通过它浏览并选择文件夹,也可以先创建然后再选择这个新建的文件夹,文件夹的浏览通过树控件来完成...
  • sjj2011
  • sjj2011
  • 2012年08月09日 17:41
  • 5449

winform本地选择显示图片和打开文件夹操作简单笔记

//打开文件夹操作   FolderBrowserDialog fd = new FolderBrowserDialog();             if (fd.ShowDialog() == D...

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数。 1.   最基本的算法是,从小到大遍历: for (i = 2 to A -1)          if (i * B > A)...

利用K-means聚类算法根据经纬度坐标对中国省市进行聚类

K-means聚类算法是一种非层次聚类算法,在最小误差的基础上将数据划分了特定的类,类间利用距离作为相似度指标,两个向量之间的距离越小,其相似度就越高。程序读取全国省市经纬度坐标,然后根据经纬度坐标进...

Radon变换理论介绍与matlab实现--经验交流

本人最近在研究Radon变换,在查阅了各种资料之后在此写下个人的理解,希望与各位牛牛进行交流共同进步,也使得理解更加深刻些。 Radon变换的本质是将原来的函数做了一个空间转换,即,将原来的XY平...

CT图像重建技术

由于csdn贴图不方便,并且不能上传附件,我把原文上传到了资源空间CT图像重建技术 1.引言 计算机层析成像(Computed Tomography,CT)是通过对物体进行不同角度的射线投影测量而...

Matlab绘图-很详细,很全面

Matlab绘图强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Ma...

linux查找目录下的所有文件中是否含有某个字符串

查找目录下的所有文件中是否含有某个字符串  find .|xargs grep -ri "IBM"  查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名  find .|xargs g...

Radon变换入门matlab CT原理

http://hi.baidu.com/hi9394/blog/item/0d492b8bfd714700c8fc7aa9.html 简介 图像投影,就是说将图像在某一方向上做线性积分(或理解为累...

Excel2016右键新建工作表,打开时提示“因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。”的解决办法

上午新建excel工作表时,发现新建完之后居然打不开 提示: 尼玛这坑爹的,难道我的Excel坏了?? 排查问题之后发现 只有新建“Microsoft Excel 工作表”时...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:谈谈 c# folderbrowserdialog 和 openFileDialog的区别
举报原因:
原因补充:

(最多只允许输入30个字)