TreeView应用(二)

TreeView实现资源管理器

 using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Collections;

public partial class _Default : System.Web.UI.Page
{   
    protected void Page_Load(object sender, EventArgs e)
    {
        if(!this.IsPostBack)
        {
            foreach(DriveInfo dv in DriveInfo.GetDrives() )//得到系统驱动目录
            {
                TreeNode node = new TreeNode();
                node.Text = dv.Name;               
                node.PopulateOnDemand = true;//允许动态填充树,就是在C盘盘符变显示+号
                node.ShowCheckBox = true;
                TreeView1.Nodes[0].ChildNodes.Add(node);//在我的电脑节点下填充               
            }
        }


    }
   //节点展开时填充下级
    protected void TreeView1_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
    {       
            if (e.Node.ChildNodes.Count == 0)
            {


                DirectoryInfo info = new DirectoryInfo(e.Node.Value);
                foreach (DirectoryInfo directory in info.GetDirectories())//得到当前选定节点下的文件夹
                {
                    TreeNode newnode = new TreeNode();
                    newnode.PopulateOnDemand = true;
                    newnode.Text = directory.Name;
                    newnode.Value = directory.FullName;
                    newnode.ImageUrl = "~/img/未命名.jpg";                   
                    newnode.ShowCheckBox = true;//增加复选框
                    e.Node.ChildNodes.Add(newnode);
                }
                foreach (FileInfo file in info.GetFiles())//继续遍历文件夹下的文件
                {
                    TreeNode newnode = new TreeNode();
                    newnode.Text = file.Name;
                    newnode.Value = file.FullName;                   
                    e.Node.ChildNodes.Add(newnode);
                }
            }
    }

    protected void TreeView1_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)
    {
        TreeView1.PopulateNodesFromClient = false;      
        if (e.Node.Checked)
        {
            foreach (TreeNode nd in e.Node.ChildNodes)
            {
                nd.Checked = true;
            }
        }
    }
    protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
    {          
        Session["path"] = TreeView1.SelectedNode.Value;
        Response.Write("<script   language='JavaScript'>window.open('Right.aspx')</script>");      
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值