4 Ekim 2010 Pazartesi

Repeater Kontrolü

Asp.Net'de bir çok veri gösterme kontrolü vardır. Öncelikle veri getirme ve veri gösterme arasındaki farkı iyi kavramak gerekir. Veri getirme kontolleri, toolbox'da data sekmesinde sonu source ile biten kontrollerdir. SqlDataSource,AccessDataSource vs. gibi. Veri gösterme kontrolleri ise, DataList,GridView,Repeater vs. gibi kontollerdir. Şimdi Repeater hakkında kısa bilgiler ve örnekler vererek açıklamaya çalışacağım.

Repeater, öncelikle kullanım kolaylığı bakımından diğer tüm veri gösterme kontrollerinden ayrılır. Kullanım kolaylığı gerçekten büyük avantaj sağlar, fakat sahip olduğu özellik bakımından diğerlerinden daha az performanslıdır. Yani gridview'da datalara türlü taklalar attırırken, bunları Repeaterda yapmak biraz daha zordur, kodlama tarafında uğraşmamız gerekir. Fakat her türlü Css'i rahatça giydirebildiğimizden, diğerlerine göre daha çok tercih edilir. Piyasada ihtiyaçların yine de %70-80 karşılamaktadır Repeater.

Repeaterda verileri gösterirken tasarımı diğer kontroller gibi herhangi bir listeden vs. seçme şansımız yok. Bu noktada source kısmından biraz html kodlarıyla haşır neşir olup tasarımı, görünümü kendimiz belirlememiz gerekecek. Bunun için de bize yardımcı olacak 5 template tanımlayacağız.

1-ItemTemplate: Repeater'ın veritabanından gelen tek veriyi ekrana göstermesi için hazırlanan template'dir.
Örneğin, veritabanından bölge isimlerini çekip ekranda göstermek istiyorsak;

yazarak biz metot çağrısı veya web.configden herhangi bir veri okuyabiliriz. # işareti metot çağırmak için kullanılacağından, Eval fonksiyonunu çağırıp kolon ismini yazarak Bölge isimlerini ekrana yazdırmış olduk.

2-SeperatorTemplate: İki veri arasına istenilen karakteri koymaya yarar. Örneğin yukarıdaki bölge isimlerini getirten fonksiyonda 10 tane bölge ismi olsa hepsini yanyana boşluk olmadan yazar. Eğer alt alta yazmasını istiyorsak bölgeleri yazmamız gereken kod,
artık alt alta bölge isimlerini getirecek.

3-HeaderTemplate: İsminden de anlaşılacağı üzere verilere başlık bilgisi eklemek için kullanılır. Örneğin,

4-AlternatingItemTemplate: Verileri ayrıştırarak onlara farklı özellikler vermemizi sağlar. Örneğin ilk veri kırmızı sonrası mavi, veya bir küçük bir büyük şeklinde gelmesini istersek. Yine örnek verecek olursak,

Yukarda mavi getirtiyorduk yazıları, artık bu kontrolden sonra bir mavi bir kırmızı renkte gelecek veriler.

5-FooterTemplate: Yine HeaderTemplate gibi adından da anlaşılacağı üzere verilerin altına yapılması istenen kodlar yazılır bu kısımda. Örneğin en alta verilerin çekildiği tarihi yazmak istiyorsak kodumuz şu şekilde olacaktır,

0 yorum: