Asp.Net Repeater ile Header ve Footer Template’lerine kod tarafında ulaşmak

Repeater’da en büyük sıkıntılardan biri Repeater.FindCondtrol() ile sadece item ve alternatingitem template gibi kısımlarda bulunan kontrollere erişebilmektedir bu makalemizde header ve footer template’deki controllere erişimide görmüş olacağız.

Asp.Net’de Repeater ile Header ve Footer Template’lerine kod tarafında ulaşmak

Alttaki kodlarla Asp.Net nesnesi olan bir repeater oluşturuyoruz ve HeaderTemplate, ItemTemplate ve FooterTemplate bloklarını kullanıyoruz.

Şimdi ise Sayfamızın Page_Load olayında altta göreceğiniz üzere sanal bir tablo oluşturmak için DataTable sınıfından faydalanıyoruz ve iki tane kolon ekliyoruz kolon adları bildiğiniz üzre üstteki Eval’lere yazdıklarımız ile aynı olmalı bunlar (Ad ve Ucret) alanlarıydı. daha sonra Repeterdaki header’i almak için şu şekilde bir syntax kullanıyoruz.

Üstteki kodda HeaderTemplat’e ulaşmak için ilk controls’e değer olarak 0 geçerek ulaşıyoruz.

Üstteki gibi bir kullanım ile headertemplat’e ulaşımından tek farkı ilk controls’e değer olarak rptUrunler adlı repeaterdaki control sayısın 1 eksiği diyerek footertemplat’e ulaşmış oluyoruz.

Çoğu programlama dillerinde Count, Length gibi özelliklerden değer almaya çalıştığımızda dönen sonuç sıfır bazlı olmadığı için yani sayım 0’dan değilde 1’den başladığı için değeri geçtiğiniz yer 0 bazlı ise -1 ibaresi kullanıp 0 bazlı olarak dönüştürebilirsiniz yapmadığınız taktirde büyük ihtimal son işlemde exception fırlatacaktır.

Kodların tamamı ise Page_Load event’inde şu şekilde olacak

5/5 - (1 vote)

Murat Öner sitesinden daha fazla şey keşfedin

Okumaya devam etmek ve tüm arşive erişim kazanmak için hemen abone olun.

Okumaya devam et