Repeater kontrolü ASP.NET’te veri bağlamak için kullanılan kontrollerden biridir. Diğer veri bağlama kontrollerine göre daha esnek bir yapıya sahiptir. Bu kontrolle ilgili dikkat edilmesi gereken bir nokta varsayılan görünümünün olmamasıdır. HTML etiketlerine eklenen ItemTemplate etiketleri ile görünümü oluşturulabilir.
Şimdi bununla ilgili bir uygulama yapalım. Daha önce SqLite programında Uyeler tablosunu oluşturup içine değerler girmiştik. Şimdi Bu bilgileri Repeater elemanıyla ekranda görüntüleyelim.
Projeye slider.aspx isminde bir web sayfası ekleyelim. Web sayfasına bir tane Repeater ekleyelim. Son hali aşağıdaki gibi olacaktır.
<div>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<b>Adı : </b><%# DataBinder.Eval(Container.DataItem, "Adi") %>
<br>
<b>Soyadı : </b><%# DataBinder.Eval(Container.DataItem, "Soyadi") %>
<br>
<b>Kullanıcı : </b><%# DataBinder.Eval(Container.DataItem, "Username") %>
<br>
<b>Şifre : </b><%# DataBinder.Eval(Container.DataItem, "Password") %>
<br>
</ItemTemplate>
</asp:Repeater>
</div>
Hatırlarsanız Uyeler tablosunu listeleme işlemini GridView ile gerçekleştirmiştik. Şimdi Repeater ile yapacağız. Öncelikle SqLite veri tabanı programı için gerekli işlemleri yapalım.
Kütüphaneleri ekleyelim.
using System.Data.SQLite;
using System.Data;
Veri tabanı değişkenlerini tanımlayalım.
SQLiteConnection con;
SQLiteDataAdapter da;
SQLiteCommand cmd;
DataSet ds;
string yol;
Şimdi Listele() metodunu oluşturalım.
private void Listele(string komut)
{
yol = Server.MapPath("/");
yol += "skorlar.s3db";
con = new SQLiteConnection("Data Source=" + yol + ";Version=3;");
da = new SQLiteDataAdapter(komut, con);
ds = new DataSet();
con.Open();
da.Fill(ds, "Uyeler");
Repeater1.DataSource = ds.Tables["Uyeler"];
Repeater1.DataBind();
con.Close();
}
Oluşturduğumuz bu metodu Page_Load olayında çağıralım.
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Listele("SELECT * FROM Uyeler");
}
}
Projeyi kaydedip çalıştıralım.
|