Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在子目录中显示文件_C#_Asp.net_Asp.net 4.0 - Fatal编程技术网

C# 如何在子目录中显示文件

C# 如何在子目录中显示文件,c#,asp.net,asp.net-4.0,C#,Asp.net,Asp.net 4.0,我很难理解如何在子目录中显示图像 目前,我有以下代码,用于显示这些子目录中的图像文件 代码隐藏 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { List<string> files = new List<string> (Directory.GetFiles(Server.MapPath("/Screenshots/"), "*.png", SearchOp

我很难理解如何在子目录中显示图像

目前,我有以下代码,用于显示这些子目录中的图像文件

代码隐藏

protected void Page_Load(object sender, EventArgs e)
{
  if (!IsPostBack)
  {
    List<string> files = new List<string> (Directory.GetFiles(Server.MapPath("/Screenshots/"), "*.png", SearchOption.AllDirectories));

    files = files.Select(s => s.Replace(@"D:\wwwroot\blah\blah", "")).ToList();

    rptDirectory.DataSource = files;
    rptDirectory.DataBind();        
  }
}  
<asp:Repeater ID="rptDirectory" runat="server">
<HeaderTemplate>            
  <h2>Results</h2>
  <br />
  <div style="display: inline;">
</HeaderTemplate>
<ItemTemplate>
  <ul>
      <li> <asp:HyperLink ID="hplFolder" runat="server" NavigateUrl="<%# Container.DataItem%>" Text="<%# Container.DataItem %>" /></li>
  </ul>         
</ItemTemplate>    
</asp:Repeater>  
受保护的无效页面加载(对象发送方,事件参数e)
{
如果(!IsPostBack)
{
列表文件=新列表(Directory.GetFiles(Server.MapPath(“/Screenshots/”)”、*.png、“SearchOption.AllDirectories));
files=files.Select(s=>s.Replace(@“D:\wwwroot\blah\blah”,“”)).ToList();
rptDirectory.DataSource=文件;
rptDirectory.DataBind();
}
}  
前端

protected void Page_Load(object sender, EventArgs e)
{
  if (!IsPostBack)
  {
    List<string> files = new List<string> (Directory.GetFiles(Server.MapPath("/Screenshots/"), "*.png", SearchOption.AllDirectories));

    files = files.Select(s => s.Replace(@"D:\wwwroot\blah\blah", "")).ToList();

    rptDirectory.DataSource = files;
    rptDirectory.DataBind();        
  }
}  
<asp:Repeater ID="rptDirectory" runat="server">
<HeaderTemplate>            
  <h2>Results</h2>
  <br />
  <div style="display: inline;">
</HeaderTemplate>
<ItemTemplate>
  <ul>
      <li> <asp:HyperLink ID="hplFolder" runat="server" NavigateUrl="<%# Container.DataItem%>" Text="<%# Container.DataItem %>" /></li>
  </ul>         
</ItemTemplate>    
</asp:Repeater>  

结果

以上工作正常,我能够在一个页面上显示所有图像

但是,我想首先以超链接/链接的形式显示它们的父文件夹,然后用户单击该链接,它会将它们带到另一个页面,在该页面上将显示该父文件夹的所有图像

当前文件夹结构如下所示

  • 截图(家长)
    • Folder1(儿童)
      • 另一个文件夹(同级)
        • 图像
所以我基本上想把文件夹1的名称显示为超链接,然后当我点击文件夹时,它会把我带到另一个显示图像的页面

我应该使用另一个asp面板来显示图像吗

希望我没有把上面说的话弄糊涂


谢谢

您需要使用树状视图

试试这个