天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之文件夾實現(xiàn)

在介紹“網(wǎng)絡(luò)硬盤”概念時已經(jīng)提到,每個用戶在“網(wǎng)絡(luò)硬盤”上都有自己的一塊空間。在下面程序設(shè)計中是這樣處理的:為用戶提供一個固定的文件夾,在這個文件夾下用戶可以自己增加/刪除新的文件夾或文件。如圖1所示,首次打開網(wǎng)頁時將列出該文件夾下的所有內(nèi)容(包括文件和文件夾)。如果想進(jìn)入下一級文件夾,可以選中該文件夾,單擊“打開”按鈕進(jìn)入。下面將就查看文件夾內(nèi)容功能的實現(xiàn)分步驟進(jìn)行說明。


圖1 用戶主界面

  1. 頁面加載

  由于程序所提供的用戶目錄是固定的,如c:/UserDir,而且要求在頁面加載后顯示該文件夾所有內(nèi)容,所以需要在Page_Load中進(jìn)行相應(yīng)操作:首先要判斷該文件夾是否存在,如果不存在需要先創(chuàng)建它;然后再列出該文件夾下的內(nèi)容,其代碼實現(xiàn)如下:

private void Page_Load(object sender, System.EventArgs e)
{
 // 在此處放置用戶代碼以初始化頁面

 if(Page.IsPostBack==false)
 {
  CurrentPath= @"c:/UserDir/"; //設(shè)置當(dāng)前目錄
  if(Directory.Exists(@"c:/UserDir/")==false) //若該目錄不存在,創(chuàng)建該目錄
   Directory.CreateDirectory(@"c:/UserDir/");
   LoadDir(CurrentPath); //初始化裝入目錄
 }
}


  LoadDir(string FullPath)方法用來列出該文件夾下的所有內(nèi)容,其代碼如下:

private void LoadDir(string FullPath)
{
 CurrentPath=FullPath;
 ArrayList values = new ArrayList();
 string [] MyFiles,MyDirs;
 MyFiles = Directory.GetFiles(FullPath); //得到該目錄下所有文件
 if(CurrentPath!=@"c:/UserDir") //若不是頂級目錄,增加“返回上級目錄”選項 {
  values.Add("返回上級目錄");
 }

 values.AddRange(MyFiles); //加入文件
 MyDirs= Directory.GetDirectories(FullPath); //得到該目錄下所有目錄
 values.AddRange(MyDirs); //加入目錄
 FileList.DataSource=values; //設(shè)置數(shù)據(jù)源
 FileList.DataBind(); //綁定數(shù)據(jù)
}

  首先要定義一個ArrayList數(shù)組對象values,用以存放頂級目錄下的所有內(nèi)容(包括文件夾名和文件名)。Directory.GetFiles()方法返回頂級目錄下的所有文件名,其返回類型為一個string數(shù)組,故需要定義一個string類對象MyFiles來保存返回的文件名;Directory.GetDirectories()返回頂級目錄下的所有文件夾名稱,同樣定義一個string數(shù)組對象MyDirs來保存它們。完成這些后就可以把MyFiles和MyDirs數(shù)組添加進(jìn)values對象了。最后要做的只是為ListBox控件對象FileList添加數(shù)據(jù)源和綁定數(shù)據(jù)。有一點需要說明:如果當(dāng)前目錄不是頂級目錄,則需要能返回到上級目錄,為此需要在FileList中添加“返回上級目錄”選項。

  2. 多級目錄查看

  通過上一部分列出的兩段代碼,就可以完成在頁面加載時列出頂級目錄下的所有內(nèi)容。當(dāng)然列出頂級目錄下的內(nèi)容還是不夠的,和Windows操作系統(tǒng)類似,網(wǎng)絡(luò)硬盤中文件夾目錄也是嵌套的,存在二級或者多級文件夾目錄。為此要進(jìn)行一些相應(yīng)的處理,使得用戶可以查看多級文件夾目錄內(nèi)容。前面界面設(shè)計中提供了一個“打開”按鈕,用戶選擇相應(yīng)的文件夾后,單擊該按鈕就可以查看該文件夾下的內(nèi)容。

  下面就為“打開”按鈕添加代碼。在“設(shè)計”面板中雙擊該按鈕,系統(tǒng)就會自動為其添加事件,其代碼內(nèi)容如下:

private void btnOpen_Click(object sender, System.EventArgs e)
{
 if(FileList.SelectedItem.Text=="返回上級目錄") //返回上級目錄
 {
  string ParentPath=Directory.GetParent(CurrentPath).ToString();
  LoadDir(ParentPath);
  return;
 }
 else //打開目錄
 {
  LoadDir(FileList.SelectedItem.Text);
 }
}

  程序首先判斷用戶選中的是不是“返回上級目錄”。如果是的話,則要先通過Directory.GetParent()方法返回上級文件夾名稱,然后再調(diào)用LoadDir()方法來顯示該目錄下的內(nèi)容;如果用戶選中的不是“返回上級目錄”而是一個文件夾名稱,則可以直接調(diào)用LoadDir()方法,F(xiàn)ileList.SelectedItem.Text為選中的文件夾名,用來作為LoadDir()方法的參數(shù)。

AspNet技術(shù)ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之文件夾實現(xiàn),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国语对白嫖老妇胖老太 | 亚洲精品高清在线观看 | 老师的快感电影完整版 | 99热都是精品| 国产视频a在线观看v | 国产在线不卡 | 亚洲精品久久久无码 | 亚洲欧美中文在线一区 | 久久精品亚洲AV无码三区观看 | 两个吃奶一个添下面视频 | 国产午夜永久福利视频在线观看 | 99视频在线精品免费观看18 | wwwwwwwww日本电影| 精品国产乱码久久久久久乱码 | 日本wwwhdsex69| 尹人综合网 | 我的家庭女教师 | 久久精麻豆亚洲AV国产品 | 给个男人都懂的网址2019 | 国产亚洲精品高清视频免费 | 国产亚洲日韩另类在线观看 | 东北女人一级毛片 | 狠狠鲁 我喜欢 | 男gv纯肉免费视频 | 精品午夜寂寞影院在线观看 | 微拍秒拍99福利精品小视频 | 寂寞夜晚免费观看视频 | 边吃胸边膜下床震免费版视频 | 一品道门免费高清视频 | 97在线国内自拍视频 | 色偷偷超碰97人人澡人人 | 男人天堂2018亚洲男人天堂 | 九九精品视频一区二区三区 | 日韩一区二区三区精品 | 日本伦理电影聚 | 国产精品99AV在线观看 | 欧美国产在线一区 | 蜜臀AV中文字幕熟女人妻 | 美女全光末满18勿进 | 亚洲性夜夜色综合网站 | 日本视频久久 |