Powerful File manager
string p = Server.MapPath(startpath);
        if (!Directory.Exists(p))
        {
            MultiView1.SetActiveView(View2);
            return;
        }
        string[] fns = Directory.GetFiles(p);
        string[] dns = Directory.GetDirectories(p);
        string uplevel = startpath;
        if (uplevel.LastIndexOf("\\") > 0)
            uplevel = uplevel.Substring(0, uplevel.LastIndexOf("\\"));
        Table1.Rows.Clear();
        Table1.CssClass = "ms-list8-main";
        TableRow tr = new TableRow();
        MyTableCell head = new MyTableCell("ms-list8-top", new MyImageButton("softimages/folder_home.png", "Default.aspx?goto=listview", "Root")
            , new MyImageButton("softimages/back.png", "Default.aspx?goto=listview&start=" + uplevel, "Back")
            , new MyImageButton("softimages/top.png", "Default.aspx?goto=Upload&start=" + startpath, "Upload File")
            , new MyImageButton("softimages/newfolder.png", "Default.aspx?goto=newFolder&start=" + startpath, "New Folder")
            , new MyImageButton("softimages/mimetype/html.png", "Default.aspx?goto=addnew2&start=" + startpath, "New Text File")
            , new MyImageButton("softimages/ark.png", "Default.aspx?goto=zip&start=" + startpath, "Archive")
            , new MyImageButton("softimages/reloadark.png", "Default.aspx?goto=ReloadZip&start=" + startpath, "Clear Archive")            
            , new MyImageButton("softimages/delark.png", "Default.aspx?goto=DeletArch&start=" + startpath, "Delete Archive"));
        head.ColumnSpan = 5;
        tr.Cells.Add(head);
        Table1.Rows.Add(tr);
        tr = new TableRow();
        tr.Cells.AddRange(new TableCell[] {new MyTableCell("File Name","ms-list8-tl"),new MyTableCell("Size","ms-list8-top")
            ,new MyTableCell("Creation Time","ms-list8-top"),
         new MyTableCell("Last write time","ms-list8-top") ,new MyTableCell("Commands","ms-list8-top")});
        Table1.Rows.Add(tr);
        PrintList(dns, false);
        PrintList(fns, true);
        tr = new TableRow();
        MyTableCell mtc = new MyTableCell(" ", "ms-list8-bottom");
        mtc.ColumnSpan = 5;
        tr.Cells.Add(mtc);
        Table1.Rows.Add(tr);
        MultiView1.SetActiveView(View2);