ASP.NET中用TreeView 浏览网站目录内容

 

 

TreeView控件使用代码
/// <summary>
/// 点击按钮在TreeView中显示网站内所有文件和文件夹
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button5_Click(object sender, EventArgs e)
{
TreeView1.Nodes[
0].ChildNodes.Clear();//清空原节点所有
getsubfile(TreeView1.Nodes[0]);
}

/// <summary>
/// 显示所选节点下所有的文件和文件夹,用递归显示,一次性完整显示,如果文件过多性能很差,
/// 可以每次只显示2层,然后选择显示
/// </summary>
/// <param name="tn">选择的节点</param>
/// <returns></returns>
public bool getsubfile(TreeNode tn)
{
DirectoryInfo di
= new DirectoryInfo(tn.Value);

int allNum = di.GetDirectories().Length + di.GetFiles("*.*").Length;
if (allNum == 0)//如果其下的文件和文件夹为空则返回
{
return false;
}
//循环显示文件夹 每个节点只设置Name和Value,value存完整路径。
foreach (DirectoryInfo subdir in di.GetDirectories())
{
TreeNode subtd
= new TreeNode();
subtd.Text
= subdir.Name;
subtd.Value
= subdir.FullName;
tn.ChildNodes.Add(subtd);
getsubfile(subtd);
}
//循环显示文件
foreach (FileInfo subfile in di.GetFiles())
{
TreeNode subtd
= new TreeNode();
subtd.Text
= subfile.Name;
subtd.Value
= subfile.FullName;
tn.ChildNodes.Add(subtd);
}
return true;
}

 

posted on 2010-08-01 16:47  Henry_Wang  阅读(191)  评论(0编辑  收藏  举报

导航