人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開(kāi)發(fā)教程 > 詳細(xì)頁(yè)面

ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之文件夾完成

ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之文件夾完成

更新時(shí)間:2022-08-08 文章作者:未知 信息來(lái)源:網(wǎng)絡(luò) 閱讀次數(shù):

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


圖1 用戶(hù)主界面

  1. 頁(yè)面加載

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

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

 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)方法用來(lái)列出該文件夾下的所有內(nèi)容,其代碼如下:

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

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

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

  2. 多級(jí)目錄查看

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

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

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

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

溫馨提示:喜歡本站的話(huà),請(qǐng)收藏一下本站!

本類(lèi)教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 洪江市| 淮南市| 高阳县| 耒阳市| 彰武县| 富阳市| 含山县| 吉安市| 延寿县| 五大连池市| 安岳县| 梧州市| 岳西县| 秦皇岛市| 梅河口市| 肥城市| 五台县| 夹江县| 红桥区| 贺州市| 离岛区| 龙江县| 青阳县| 明水县| 延川县| 察哈| 镇赉县| 许昌县| 汤阴县| 江达县| 治多县| 景谷| 栾城县| 梁平县| 桂东县| 乐业县| 九江市| 灵璧县| 阿坝县| 呼玛县| 江北区|