我们实现一个简单的文件浏览器,这个示例没有通过手动循环文件或目录,而是利用 GridView 及数据绑定代码来处理所有的事情。
目录列表分别用了两个 GridView 控件创建,其中一个在另一个的上面。最上层的 GridView 显示目录,而底层的 GridView 显示文件。第二个 GridView 的ShowHeader 属性设为 false ,这样两个 GridView 就可以无缝地连接。
下面是提供目录列表的 GridView 控件声明,这个网格绑定到一个 DirectoryInfo 对象数组,显示 Name 以及 LastWriteTime 属性。它还创建 Size 列,不用于显示任何信息,只是保留空间以便目录列表与后面出现的文件列表较好地绑定在一块。此外,DirectoryInfo.FullName 属性被用作关键字段,这样用户单击目录时可以返回一个完整的路径。
GridLines="None" CellPadding="0" CellSpacing="1" DataKeyNames="FullName">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<img src="~/images/folder.jpg" alt="Folder" />
</ItemTemplate>
</asp:TemplateField>
<asp:ButtonField DataTextField="Name" CommandName="Select" HeaderText="Name" />
<asp:BoundField HeaderText="Size" />
<asp:BoundField DataField="LastWriteTime" HeaderText="LasT Modified" />
</Columns>
</asp:GridView>