vis kun et drev eller submapper, denne kode virker med alle drev.
Jeg har en gammel ASP.Net 2.0 bog hvor jeg har lavet dette eks. jeg kan bare ikke se i bogen hvordan jeg lavet en drev liste for KUN et drev evt. Drev C.Og kan heller ikke se hvordan jeg kan lave en mappe liste af undermapper for evt en mappe og ikke et drev evt. C:/test/
min kode er flg. som virker, den viser alle drev/str. og fri plads på drevet samt mapper/submapper på de forskellige drev.
.:: Showdriveandfilesinit.aspx ::.
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="Showdriveandfilesinit.aspx.vb" Inherits="file_and_folderVB" title="Untitled Page" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Lokal System Drev</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table>
<tr>
<td style="width: 100px" valign="top">
<asp:TreeView ID="TreeView1" runat="server"></asp:TreeView>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
.:: Showdriveandfilesinit.aspx.vb ::.
Partial Public Class file_and_folderVB
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives()
Dim node As TreeNode = New TreeNode()
node.Value = drive.Name
' Sørger for at drevet er klar, før adgang til det
If (drive.IsReady) Then
node.Text = drive.Name & " - (Fri Lagerplads: " & drive.AvailableFreeSpace & ") Af ialt (" & drive.TotalSize & ")"
LoadDirectories(node, drive.Name)
Else
node.Text = drive.Name & " - (Ikke klar)"
End If
Me.TreeView1.Nodes.Add(node)
Next
Me.TreeView1.CollapseAll()
End Sub
Private Sub LoadDirectories(ByVal parent As TreeNode, ByVal path As String)
Dim directory As System.IO.DirectoryInfo = New System.IO.DirectoryInfo(path)
Try
For Each d As System.IO.DirectoryInfo In directory.GetDirectories
Dim node As TreeNode = New TreeNode(d.Name, d.FullName)
parent.ChildNodes.Add(node)
'Vis det aktuelle drev/mapper/filer
LoadDirectories(node, d.FullName)
Next
Catch ex As System.UnauthorizedAccessException
parent.Text += " (Adgang nægtet)"
Catch ex As System.IO.IOException
parent.Text += " (Ukendt Fejl: " + ex.Message + ")"
End Try
End Sub
End Class