日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

使用Treeview模拟操作系统的文件系统

發布時間:2023/12/9 windows 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Treeview模拟操作系统的文件系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
default.aspx 代碼:

<%@?Page?language="c#"?Codebehind="default.aspx.cs"?AutoEventWireup="false"?Inherits="OsFilesytem._default"?%>
<%@?Register?TagPrefix="iewc"?Namespace="Microsoft.Web.UI.WebControls"?Assembly="Microsoft.Web.UI.WebControls"?%>
<!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.0?Transitional//EN"?>
<HTML>
<HEAD>
<title>WebForm2</title>
<meta?name="GENERATOR"?Content="Microsoft?Visual?Studio?.NET?7.1">
<meta?name="CODE_LANGUAGE"?Content="C#">
<meta?name="vs_defaultClientScript"?content="JavaScript">
<meta?name="vs_targetSchema"?content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body>
<form?id="Form1"?method="post"?runat="server">
<iewc:TreeView?id="TreeView1"?runat="server"?AutoPostBack="True"?BackColor="#EEEEEE"></iewc:TreeView>
</form>
</body>
</HTML>

default.aspx.cs代碼:

using?System;
using?System.Collections;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Web;
using?System.Web.SessionState;
using?System.Web.UI;
using?System.Web.UI.WebControls;
using?System.Web.UI.HtmlControls;

using?Microsoft.Web.UI.WebControls;
using?System.IO;

namespace?OsFilesytem
{
///?<summary>
///?WebForm2?的摘要說明。
///?</summary>
public?class?_default?:?System.Web.UI.Page
{
protected?Microsoft.Web.UI.WebControls.TreeView?TreeView1;

private?void?Page_Load(object?sender,?System.EventArgs?e)
{
if(!Page.IsPostBack)
{
TreeNode?newnode=new?TreeNode();
newnode.Text="我的電腦";
this.TreeView1.Nodes.Add(newnode);

try?
{
string[]?drives?=?System.IO.Directory.GetLogicalDrives();

foreach?(string?str?in?drives)
{
TreeNode?tmpNd;
tmpNd=new?TreeNode();
tmpNd.Text=str;
this.TreeView1.Nodes[0].Nodes.Add(tmpNd);

//ProcessDirectory(str,tmpNd);
}

}
catch?(System.IO.IOException)
{
this.Response.Write("I/O錯誤!");
}
catch?(System.Security.SecurityException)
{
this.Response.Write("沒有訪問權限!");
}
}
}


public?void?ProcessDirectory(string?targetDirectory,TreeNode?TN)
{
if(targetDirectory.ToString()==@"A:\")
{
return;
}

TreeNode?tmpNd;
try
{
//?Process?the?list?of?files?found?in?the?directory
string?[]?fileEntries?=?Directory.GetFiles(targetDirectory);
foreach(string?fileName?in?fileEntries)
{
tmpNd=new?TreeNode();

//只顯示文件名
tmpNd.Text=fileName.Substring(fileName.LastIndexOf(@"\")+1);

//顯示文件?全名(路徑+名稱)
//tmpNd.Text=fileName;

TN.Nodes.Add(tmpNd);
}

//?Recurse?into?subdirectories?of?this?directory??
string?[]?subdirectoryEntries?=?Directory.GetDirectories(targetDirectory);
foreach(string?subdirectory?in?subdirectoryEntries)
{
tmpNd=new?TreeNode();

//只顯示文件夾名
tmpNd.Text=subdirectory.Substring(subdirectory.LastIndexOf(@"\")+1);

//顯示文件夾?全名(路徑+名稱)
//tmpNd.Text=subdirectory;

TN.Nodes.Add(tmpNd);

//ProcessDirectory(subdirectory,tmpNd);
}
}
catch
{
}
}


///?<summary>
///?獲得當前結點的全名
///?</summary>
///?<param?name="TN">當前結點</param>
///?<returns>全名</returns>
private?string?GetFullName(TreeNode?TN)
{
if(TN.Text=="我的電腦")
{
return?"我的電腦";
}
string?str_fullname="";

while(((TreeNode)TN.Parent).Text!="我的電腦")
{
str_fullname?=?TN.Text?+?@"\"?+?str_fullname;
TN=(TreeNode)TN.Parent;
}
str_fullname?=TN.Text?+?str_fullname;
return?str_fullname;
}

#region?Web?窗體設計器生成的代碼
override?protected?void?OnInit(EventArgs?e)
{
//
//?CODEGEN:?該調用是?ASP.NET?Web?窗體設計器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

///?<summary>
///?設計器支持所需的方法?-?不要使用代碼編輯器修改
///?此方法的內容。
///?</summary>
private?void?InitializeComponent()
{????
this.TreeView1.Expand?+=?new?Microsoft.Web.UI.WebControls.ClickEventHandler(this.TreeView1_Expand);
this.Load?+=?new?System.EventHandler(this.Page_Load);

}
#endregion
private?void?TreeView1_Expand(object?sender,?Microsoft.Web.UI.WebControls.TreeViewClickEventArgs?e)
{
TreeNode?TNS=this.TreeView1.GetNodeFromIndex(e.Node);

foreach(TreeNode?TN?in?TNS.Nodes)
{
this.ProcessDirectory(this.GetFullName(TN),TN);
}
}
}
}?

OVER

轉載于:https://www.cnblogs.com/RobotTech/archive/2006/10/11/526254.html

總結

以上是生活随笔為你收集整理的使用Treeview模拟操作系统的文件系统的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。