codice:
<%@ Import NameSpace="System.IO" %>
<script...>
private dir as DirectoryInfo
private f as FileInfo
private strDir as String
sub Page_Load(...)
if not Page.IsPostBack then
strDir = Request.Params("dir")
if strDir="" then
strDir="c:\"
end if
tbDir.Text = StrDir
dir = new DirectoryInfo(StrDir)
ListFiles()
end sub
sub tbDir_Handles(..)
strDir=obj.Text
if Directory.Exists(strDir) then
dir = new DirectoryInfo(strDir)
ListFiles()
else
lblMessage.Text="Directory non valida"
end if
end sub
sub ListFiles()
dim hl as HyperLink
dim d as DirectoryInfo
if not dir.Root.FullName = dir.FullName then
hl = new Hyperlynk
hl.Text =""
hl.NavigateURL = "pagina.aspx?dir="& Server.URLEncode(dir.Parent.FullName)
Panel1.Controls.Add(h1)
Panel1.Controls.Add(new LiteralControl("
"))
end if
for each d in dir.GetDirectories
hl=new Hyperlink
hl.Text = d.Name
h1.NavigateURL = "pagina.aspx?dir="& Server.URLEncode(d.FullName)
Panel1.Controls.Add(hl)
Panel1.Controls.Add(new LiteralControl("
"))
next
for each f in dir.GetFiles("*.*")
lblMessage.Text += f.Name & "
"
next
end sub
</script>
<html><body>
<form ..>
Directory : <asp:Textbox id="tbDir" runat="server" OnTextChanged="tbDir_Handle" AutoPostBack="true" />
<asp:Panel id="Panel1" runat="server" MaintainState="true" />
<asp:Label id="lblMessage" runat="server" maintainstate="false" />
</form>
</body></html>
se nella parte in neretto ci si mette un ListBox credo che risolvi il tuo problema