首先创建一个类,类名称为FileControl,

         /// <summary>
/// 获取制定文件夹下面的文件夹
/// </summary>
/// <param name="FileDir">文件夹名称</param>
/// <returns></returns>
public static DataTable FileDirList(string FileDir)
{
DataTable dt = new DataTable();
dt.Columns.Add("dir_id");
dt.Columns.Add("dir_name");
dt.Columns.Add("dir_dir");
dt.Columns.Add("dir_create_time"); try
{
string strXmlZipDirectory = FileDir;
if (Directory.Exists(strXmlZipDirectory))
{
DirectoryInfo di = new DirectoryInfo(strXmlZipDirectory);
DirectoryInfo[] ds = di.GetDirectories();
if (ds.Length > )
{
int i = ;
foreach (DirectoryInfo tmpDirs in ds)
{
DataRow dr = dt.NewRow();
dr[] = i.ToString();
dr[] = tmpDirs.Name;
dr[] = tmpDirs.FullName;
dr[] = tmpDirs.CreationTime;
dt.Rows.InsertAt(dr, i);
i++;
}
return dt;
}
else
{
return dt;
}
}
else
{
return dt;
}
}
catch
{ return dt;
}
}
/// <summary>
/// 获取指定文件夹下的文件,附加后缀过滤
/// </summary>
/// <param name="FileDir">文件夹名称</param>
/// <param name="FileExtension">文件后缀</param>
/// <returns></returns>
public static DataTable FileList(string FileDir, string FileExtension)
{
DataTable dt = new DataTable();
dt.Columns.Add("file_id");
dt.Columns.Add("file_name");
dt.Columns.Add("file_dir");
dt.Columns.Add("file_url");
dt.Columns.Add("file_size");
qdt.Columns.Add("file_create_time");
dt.Columns.Add("file_Extension");
dt.Columns.Add("file_IsReadOnly"); try
{
string strXmlZipDirectory = FileDir;
if (Directory.Exists(strXmlZipDirectory))
{
DirectoryInfo di = new DirectoryInfo(strXmlZipDirectory);
FileInfo[] FI = di.GetFiles(FileExtension);
if (FI.Length > )
{
int i = ;
foreach (FileInfo tmpFI in FI)
{
DataRow dr = dt.NewRow();
dr[] = i.ToString();
dr[] = tmpFI.Name;
dr[] = tmpFI.Directory;
dr[] = tmpFI.FullName;
dr[] = tmpFI.Length;
dr[] = tmpFI.CreationTime;
dr[] = tmpFI.Extension;
dr[] = tmpFI.IsReadOnly;
dt.Rows.InsertAt(dr, i);
i++;
}
return dt;
}
else
{
return dt;
}
}
else
{
return dt;
}
}
catch
{ return dt;
}
}
/// <summary>
/// 获取指定文件夹下面的文件名称
/// </summary>
/// <param name="FileDir">文件夹名称</param>
/// <returns></returns>
public static DataTable FileList(string FileDir)
{
DataTable dt = new DataTable();
dt.Columns.Add("file_id");
dt.Columns.Add("file_name");
dt.Columns.Add("file_dir");
dt.Columns.Add("file_url");
dt.Columns.Add("file_size");
dt.Columns.Add("file_create_time");
dt.Columns.Add("file_Extension");
dt.Columns.Add("file_IsReadOnly"); try
{
string strXmlZipDirectory = FileDir;
if (Directory.Exists(strXmlZipDirectory))
{
DirectoryInfo di = new DirectoryInfo(strXmlZipDirectory);
FileInfo[] FI = di.GetFiles("*.*");
if (FI.Length > )
{
int i = ;
foreach (FileInfo tmpFI in FI)
{
DataRow dr = dt.NewRow();
dr[] = i.ToString();
dr[] = tmpFI.Name;
dr[] = tmpFI.Directory;
dr[] = tmpFI.FullName;
dr[] = tmpFI.Length;
dr[] = tmpFI.CreationTime;
dr[] = tmpFI.Extension;
dr[] = tmpFI.IsReadOnly;
dt.Rows.InsertAt(dr, i);
i++;
}
return dt;
}
else
{
return dt;
}
}
else
{
return dt;
}
}
catch
{ return dt;
}
}

在C#代码的调用和方法为

  /// <summary>
/// 绑定后台文件夹
/// </summary>
protected void BackPageDir()
{
ListItem item2 = new ListItem("根目录", "");
this.DropDownList_BackPageDir.Items.Add(item2);
foreach (DataRow rows in FileControl.FileDirList(Server.MapPath("../")).Rows)
{
ListItem items = new ListItem(rows["dir_name"].ToString(), rows["dir_name"].ToString());
this.DropDownList_BackPageDir.Items.Add(items);
}
}  /// <summary>
        /// 绑定文件夹内的*.aspx文件或者*.html文件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void DropDownList_BackPageDir_SelectedIndexChanged(object sender, EventArgs e)
        {
            string strPath = "../";
            if (DropDownList_BackPageDir.SelectedValue.Length > 0)
            {
                strPath = "../" + DropDownList_BackPageDir.SelectedValue + "/";//获得选中的文件名
            }
            this.DropDownList_BackPage.Items.Clear();//清除Backpage内的数据
            foreach (DataRow rows in FileControl.FileList(Server.MapPath(strPath), "*.aspx").Rows)
            {
                //获取后缀为.aspx的文件
                ListItem items = new ListItem(rows["file_name"].ToString(), rows["file_name"].ToString());
                DropDownList_BackPage.Items.Add(items);
            }             foreach (DataRow rows in FileControl.FileList(Server.MapPath(strPath), "*.html").Rows)
            {
                //获取后缀为.html的文件
                ListItem items = new ListItem(rows["file_name"].ToString(), rows["file_name"].ToString());
                DropDownList_BackPage.Items.Add(items);
            }
        }

C# DropDownList绑定文件夹的更多相关文章

  1. winform treeview 绑定文件夹和文件

    转载:http://www.cnblogs.com/zhbsh/archive/2011/05/26/2057733.html #region treeview 绑定文件夹和文件 /// <su ...

  2. 递归法绑定文件夹到导航树&在指定文件夹下新建文件夹

    protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (Request.QueryString[&q ...

  3. 在Linux系统下限制指定目录的大小以及文件/文件夹数量

    背景说明 在Linux操作系统下有时需要限制一个指定文件夹的大小和文件夹内可存储的文件数量,有可能是出于安全的考量或者定制化的配置,这里我们提供了一种方案:用dd创建一个空的img镜像,进行格式化的配 ...

  4. asp.net(C#)读取文件夹和子文件夹下所有文件,绑定到GRIDVIEW并排序 .

    Asp部分: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MyFiles ...

  5. asp.net 遍历文件夹下全部子文件夹并绑定到gridview上

    遍历文件夹下所有子文件夹,并且遍历配置文件某一节点中所有key,value并且绑定到GridView上 Helper app_Helper = new Helper(); DataSet ds = n ...

  6. iNeuOS工业互联网操作系统,增加搜索应用、多数据源绑定、视图背景设置颜色、多级别文件夹、组合及拆分图元

    目       录 1.      概述... 2 2.      搜索应用... 2 3.      多数据源绑定... 3 4.      视图背景设置颜色... 4 5.      多级别文件夹 ...

  7. Android加载SD卡目录,文件夹遍历,图片设置,设置文件对应打开方式等

    此案例主要说的是Android使用GridView加载SD卡下所有目录,文件夹多层遍历,文件图标修改,设置文件对应打开方式等功能. 如图: 代码: public class GridViewFile ...

  8. 文件夹管理工具(MVC+zTree+layer)(附源码)

    写在前 之前写了一篇关于 文件夹与文件的操作的文章  操作文件方法简单总结(File,Directory,StreamReader,StreamWrite )  把常用的对于文件与文件夹的操作总结了一 ...

  9. 读取assets文件夹下图片(ods_interview)

    今天看了一道题,现在总结一下里面使用到的知识点: 1.assets文件的访问: 原文出处:http://blog.csdn.net/fengyuzhengfan/article/details/383 ...

随机推荐

  1. Quartz 开源的作业调度框架

    Quartz 是一个开源的作业调度框架,它完全由 Java 写成,并设计用于 J2SE 和 J2EE 应用中.它提供了巨大的灵活性而不牺牲简单性.你能够用它来为执行一个作业而创建简单的或复杂的调度.本 ...

  2. 怎样给你的Android 安装文件(APK)减肥

    转自: http://greenrobot.me/devpost/putting-your-apks-on-diet/ Android的apk文件越来越大了这已经是一个不争的事实. 在Android ...

  3. 【计算几何初步:多边形中心】【HDU1115】Lifting the Stone

    一.质点系重心公式 x=(x1*m1+x2*m2+x3*m3.....xn*mn)/M  (M=m1+m2+m3+m4...+mn) 二.三角形重心 可直接求得,但在多边形剖分中 各三角形的质点的质量 ...

  4. 查看mysql apache php nginx的编译参数

    查看mysql编译参数: cat /usr/local/mysql/bin/mysqlbug|grep configure 查看apache编译参数: cat /usr/local/apache2/b ...

  5. HDU 5145 - NPY and girls

    题意: cases T(1≤T≤10) (0<n,m≤30000) (0<ai≤30000)    n个数ai 表示n个女孩所在教室 m次询问 [L,R](1 <= L <= ...

  6. 图的深度优先遍历的实现 c/c++ DFS

    #include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h&g ...

  7. MYSQL分页存储过程及事务处理--转自peace

    MYSQL的分页过程,和事务处理的一个测试过程. /* --名称:MYSQL版查询分页存储过程 by peace 2013-8-14 --输入参数:@fields -- 要查询的字段用逗号隔开 --输 ...

  8. AngularJS之Factory vs Service vs Provider

    原文  http://www.linuxeden.com/html/news/20140509/151538.html 当你初试 Angular 时,很自然地就会往 controller 和 scop ...

  9. Git for PyCharm

    Git for PyCharm Using PyCharm's Git integration locally:http://confluence.jetbrains.com/display/PYH/ ...

  10. hdoj分类

    http://blog.csdn.net/lyy289065406/article/details/6642573 模拟题, 枚举1002 1004 1013 1015 1017 1020 1022 ...