İlk olarak projemize resimler isimli bir klasör açıp içine resimlerimizi kopyalıyoruz. Şimdi resimleri ekranda görüntülemek için sayfamıza bir Repeater ekleyip içine resimleri görüntüleyecek olan image nesnemizi koyuyoruz.
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater ID="RepeaterImages" runat="server">
<ItemTemplate>
<asp:Image ID="Image" runat="server" ImageUrl='<%# Container.DataItem %>' Width="150"
Height="150" />
</ItemTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>
Sayfamızın page_load olayında ilk olarak klasördeki dosyaları okuyup bir dizi içine aktarıyoruz daha sonra bu dizi içindeki elemanların resim dosyası olup olmadığını uzantılarını kontrol ederek tespit ediyoruz eğer resim dosyası ise resimler listesine atıyoruz. Tüm dosyalar kontrol edildikten sonra son olarak listeyi eklediğimiz Repeater’ın veri kaynağı olarak belirleyip içini dolduruyoruz.
protected void Page_Load(object sender, EventArgs e)
{
string[] klasordekiler = Directory.GetFiles(Server.MapPath("~/resimler"));
List<String> resimler = new List<string>(klasordekiler.Count());
string[] resimuzantisi = { ".jpg", ".gif", ".png", ".jpeg" };
//www.aspnetornekleri.com
foreach (string resimdosyasi in klasordekiler)
{
for (int i = 0; i < resimuzantisi.Length; i++)
{
string[] parcalar;
parcalar = resimdosyasi.Split('.');
if(resimuzantisi[i]=="."+parcalar[1])
resimler.Add(String.Format("~/resimler/{0}", System.IO.Path.GetFileName(resimdosyasi)));
}
}
//www.aspnetornekleri.com
RepeaterImages.DataSource = resimler;
RepeaterImages.DataBind();
}
Hiç yorum yok:
Yorum Gönder