Bir datalist içine ekledğimiz diğer datalist, label veya butonlara ulaşmanın birkaç yolu bulunmaktadır. Bunlardan en yaygın kullanılanı "ItemDataBound) kullanmaktır. Bunun dışında for döngüsü de kullanılarak datalist içindeki bilgilere ulaşılabilir. bu yazımızda her ikisinden de bahseceğiz.
ItemDataBound Kullanımı
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
{
int id = Convert.ToInt32(DataBinder.Eval(e.Item.DataItem, "id").ToString()); // Datalist id ulaşılabilir
DataList dtList = (DataList)e.Item.FindControl("dtList");
Label lbl = (Label)e.Item.FindControl("lbl");
}
}
bu şekilde yazarak tüm işlemlerimizi yapabiliriz.
For Döngüsü Kullanımı Kullanımı
baglan.Open();
OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM Tablo ORDER BY id ASC", baglan);
DataSet ds = new DataSet();
da.Fill(ds);
DataList1.DataSource = ds;
DataList1.DataBind();
baglan.Close();
for ( int i=0; i< Datalist.Items.Count, i++)
{
DataList dtList = (DataList)dtList.Items[i].FindControl("dtList");
Label lbl = (Label)dtList.Items[i].FindControl("lbl");
}
formatında yazara türm nesnelere ulaşabilirsiniz.
|