我很生疏,尋求幫助。我已經加載了幾個圖像文件到我的網絡服務器上的一個文件夾(所以,上傳他們)。我現在想要簡單地顯示它們,在aspx頁面上相互之下。所以,我想遍歷文件夾中的所有圖像文件,並將它們顯示在頁面上。顯示基於文件夾的圖像列表
最簡單的方法是一個表,然後爲每個文件添加tr/td。
有人可以提醒嗎?這是最好的嗎?在我的cs文件中讀取該文件夾的事件,創建並填充它?
這純粹是爲了測試頁面,而不是生產。
我很生疏,尋求幫助。我已經加載了幾個圖像文件到我的網絡服務器上的一個文件夾(所以,上傳他們)。我現在想要簡單地顯示它們,在aspx頁面上相互之下。所以,我想遍歷文件夾中的所有圖像文件,並將它們顯示在頁面上。顯示基於文件夾的圖像列表
最簡單的方法是一個表,然後爲每個文件添加tr/td。
有人可以提醒嗎?這是最好的嗎?在我的cs文件中讀取該文件夾的事件,創建並填充它?
這純粹是爲了測試頁面,而不是生產。
ASPX:
<asp:DataList ID="DataList1" runat="server" RepeatColumns="5" CellPadding="5">
<ItemTemplate>
<asp:Image Width="100" ID="Image1" ImageUrl='<%# Bind("Name", "~/images/{0}") %>' runat="server" />
<br />
<asp:HyperLink ID="HyperLink1" Text='<%# Bind("Name") %>' NavigateUrl='<%# Bind("Name", "~/images/{0}") %>' runat="server"/>
</ItemTemplate>
<ItemStyle BorderColor="Silver" BorderStyle="Dotted" BorderWidth="1px" HorizontalAlign="Center"
VerticalAlign="Bottom" />
</asp:DataList>
代碼隱藏:
protected void Page_Load(object sender, EventArgs e)
{
ListImages();
}
private void ListImages()
{
DirectoryInfo dir = new DirectoryInfo(MapPath("~/images"));
FileInfo[] file = dir.GetFiles();
ArrayList list = new ArrayList();
foreach (FileInfo file2 in file)
{
if (file2.Extension == ".jpg" || file2.Extension == ".jpeg" || file2.Extension == ".gif")
{
list.Add(file2);
}
}
DataList1.DataSource = list;
DataList1.DataBind();
}
添加任何擴展你需要!
<%@ Page Language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private string url;
protected void Page_Load(object sender, EventArgs e)
{
url = PictureManager.MembersImagesPath + tuMember.PhotoBig;
Page.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Image ID="Image1" runat="server" Height="210px" Width="252px" ImageUrl="<%#url%>" />
</div>
</form>
</body>
</html>
希望這有助於!
對於直HTML的方式,你可以使用:
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
const string SUBDIR = "images";
foreach (string fileName in System.IO.Directory.GetFiles(Server.MapPath(SUBDIR)))
{
var oRow = new HtmlTableRow();
var oCell = new HtmlTableCell();
var oHREF = new HtmlAnchor();
string actualFileName = System.IO.Path.GetFileName(fileName);
oHREF.HRef = Request.ApplicationPath + "//" + SUBDIR + "//" + actualFileName;
oHREF.InnerText = actualFileName;
oCell.Controls.Add(oHREF);
oRow.Cells.Add(oCell);
tblImages.Rows.Add(oRow);
}
}
}
如果其不能用於生產,只是一個列表會做!也很有效率。 – King