C#实现文件夹选择框

原创 2006年06月20日 12:29:00
       大家都用过C#里的文件打开/保存对话框吧?方便明快且易上手.但是可惜的是,C#居然没提供同样的文件夹选择框,很多人通过P/I invoke使用了系统的一些函数来实现对话框,那是相当地不方便啊~~其实,C#的FolderNameEditor类在某种程度上就实现了文件夹选择框的功能,只不过没有完全包装出来.呵呵,今天就给读者放出一个使用C#自己的类实现的对话框,使用起来就跟OpenFileDialog一样简单易用.
 
       给文件夹选择框类起名叫OpenFolderDialog,类设计如下:
public class OpenFolderDialog : FolderNameEditor, IDisposable
{
    FolderNameEditor.FolderBrowser fDialog = new FolderNameEditor.FolderBrowser();
 
    public OpenFolderDialog()
    {
    }
 
    public DialogResult ShowDialog()
    {
        return ShowDialog("Select a folder:");
    }
 
    public DialogResult ShowDialog(string description)
    {
        fDialog.Description = description;
        return fDialog.ShowDialog();
    }
 
    public string Path
    {
        get
        {
            return fDialog.DirectoryPath;
        }
    }
 
    public void Dispose()
    {
        fDialog.Dispose();
    }
}
使用实例:
private void selectFolderButton_Click(object sender, EventArgs e)
{
    using (OpenFolderDialog openFolderDlg = new OpenFolderDialog())
    {
        if (openFolderDlg.ShowDialog() == DialogResult.OK)
        {
            this.outFolderTextBox.Text = openFolderDlg.Path;
        }
    }
}
 

下面是对照的OpenFolderDialog使用实例,对照一下,是不是很相似?

private void selectFileButton_Click(object sender, EventArgs e)
{
    using (OpenFileDialog openDlg = new OpenFileDialog())
    {
        openDlg.Filter = @"All text Files(*.txt)|*.txt";
        openDlg.Multiselect = false;
        openDlg.RestoreDirectory = true;
        openDlg.FilterIndex = 1;
 
        if (openDlg.ShowDialog() == DialogResult.OK)
        {
            this.filePathTextBox.Text = openDlg.FileName;
        }
    }
}

C# 选择文件 和 选择文件夹 对话框

private void button2_Click(object sender, EventArgs e) { OpenFileDialog fileDial...
  • sc6231565
  • sc6231565
  • 2016年03月22日 22:45
  • 15045

C#实现选择文件夹对话框

1.前言   在编程时,我们经常需要设置路径,手动录入既慢又容易出错,最好的办法就是通过一个对话框进行选择,这里介绍了一种实现方法。 2.运行图片 3.添加引用 ...
  • QingHeShiJiYuan
  • QingHeShiJiYuan
  • 2015年10月26日 21:49
  • 1095

C#选择文件夹的实现

刚刚试着做一个统计作业的小工具,发现C#没有可以选择文件夹的控件,于是经过一番上网搜索,成功实现了此功能。 首先新建一个winform的项目,再新建一个类文件(File->AddNewItem->C...
  • u014304560
  • u014304560
  • 2015年09月24日 19:26
  • 1147

C#选择文件和文件夹

C#选择文件      OpenFileDialog fileDialog = new OpenFileDialog();            fileDialog.InitialDirectory...
  • ytc666
  • ytc666
  • 2010年02月21日 10:10
  • 16605

使用C#选择文件夹、打开文件夹、选择文件或者如何使用C#选择文件夹

http://www.cnblogs.com/walkingp/archive/2011/01/16/1936670.html 选择文件夹是winform很简单的一个问题,但是在...
  • swarb
  • swarb
  • 2013年02月19日 13:30
  • 1126

C#选择文件、选择文件夹、打开文件(或者文件夹)

1、选择文件用OpenDialog OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;//该值确...
  • wobckr
  • wobckr
  • 2017年10月31日 17:20
  • 118

C# winform文件目录复制 带进度条 类似于windows

  • 2015年10月08日 13:52
  • 131KB
  • 下载

c# 下载服务器端文件,服务器再删除文件

 下载服务器端的文件可以使用最直接的超链接。超链接的路径可以是绝对路径,也可以是相对路径。但是有时候因为浏览器的缘故,需要点击右键save as才可以下载。如果希望点击button才下载文件的话使用R...
  • cctt_1
  • cctt_1
  • 2007年09月05日 21:28
  • 2126

C# winform选择文件,文件夹,打开指定目录方法

private void btnFile_Click(object sender, EventArgs e) { OpenFileDialog fileDialog = new OpenFileDia...
  • QQ282030166
  • QQ282030166
  • 2014年05月04日 15:31
  • 14944

使用C#选择文件夹、打开文件夹、选择文件

  • 2013年03月05日 15:20
  • 23KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#实现文件夹选择框
举报原因:
原因补充:

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