Mega Code Archive

 
Categories / ASP.Net Tutorial / File Directory
 

Binding a GridView to directory files (VB)

<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)         For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives()             Dim node As TreeNode = New TreeNode()             node.Value = drive.Name             If (drive.IsReady) Then                 node.Text = drive.Name & " - (free space: " & drive.AvailableFreeSpace & ")"                 LoadDirectories(node, drive.Name)             Else                 node.Text = drive.Name & " - (not ready)"             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)                 LoadDirectories(node, d.FullName)             Next         Catch ex As System.UnauthorizedAccessException             parent.Text += " (Access Denied)"         Catch ex As Exception             parent.Text += " (Unknown Error: " + ex.Message + ")"         End Try     End Sub     Protected Sub TreeView1_SelectedNodeChanged _         (ByVal sender As Object, ByVal e As System.EventArgs)         Dim directory As System.IO.DirectoryInfo = New System.IO.DirectoryInfo(Me.TreeView1.SelectedNode.Value)         Me.GridView1.DataSource = directory.GetFiles()         Me.GridView1.DataBind()     End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">     <title>Untitled Page</title> </head> <body>     <form id="form1" runat="server">     <div>         <table>             <tr>                 <td>                    <asp:TreeView ID="TreeView1" runat="server"                         OnSelectedNodeChanged="TreeView1_SelectedNodeChanged">                    </asp:TreeView>                 </td>                 <td>                     <asp:GridView ID="GridView1" runat="server"                          AutoGenerateColumns="False" GridLines="None" CellPadding="3">                         <Columns>                             <asp:BoundField DataField="Name" HeaderText="Name"                                  HeaderStyle-HorizontalAlign="Left"                                   HeaderStyle-Font-Bold="true" />                             <asp:BoundField DataField="Length" HeaderText="Size"                                  ItemStyle-HorizontalAlign="Right"                                   HeaderStyle-HorizontalAlign="Right"                                   HeaderStyle-Font-Bold="true" />                             <asp:BoundField DataField="LastWriteTime"                                  HeaderText="Date Modified"                                   HeaderStyle-HorizontalAlign="Left"                                   HeaderStyle-Font-Bold="true" />                         </Columns>                     </asp:GridView>                 </td>                             </tr>         </table>          </div>     </form> </body> </html>