Kendim geliştirmiş olduğum, sadece BlogEngine için değil, kendi asp.net projelerinize de uyarlayabileceğiniz kullanışlı bir sayfalama kontrolü olan ECPager'ı tanıtıyor olacağım.
Bildirgec okurlarının kolaylıkla tanıyabilecekleri bir sistem, çünkü aynı mantıkla çalışmakta (:
Kurulumu:
Yazının sonunda bulunan linkten indirebileceğimiz ECPager.cs dosyasını, BlogEngine projemizde "<root>\App_Code\Controls\" dizinine kopyalayalım.
Ardından "<root>\User Controls\PostList.aspx" dosyasını açıp, sayfanın en altına aşağıdaki kodu ekleyelim.
<blog:ECPager ID="ecPager" runat="server" CssClass="pager"></blog:ECPager>
Şimdi, "<root>\User Controls\PostList.aspx.cs" dosyasını açıp, sayfalama kontrolümüzün propertylerini set edelim. Bunun için PostList.aspx.cs dosyası içersinde bulunana BindPosts fonksiyonun en altına aşağıdaki kodları yazmamız yeterli olacaktır.
private void BindPosts()
{
//Var olan kodlarda bir değişiklik yapmadan
//Fonksiyonun en sonuna aşağıdaki kodları ekliyoruz.
ecPager.TotalRecords = visiblePosts.Count;
ecPager.ItemsPerPage = BlogSettings.Instance.PostsPerPage;
ecPager.CurrentPageIndex = page+1;
ecPager.LinkPageFormat = "page=";
}
ECPager Sayfalama kontrolümüz hazır!
Opsiyonel Ayarlar
İstersek CssClass property'sinde belirtdiğimiz "pager" isimli bir class yaratıp, sayfalama kontrolümüzün style'ını değiştirebiliriz. (Aşağıdaki gibi)
.pager
{
text-align: center;
color: #777777;
font-size: 14px;
font-weight: bold;
margin-bottom: 20px;
}
.pager a
{
color: #E8A02C;
font-size: 14px;
}
BlogEngine'e ait olan eski sayfalama linklerini de yine isterseniz kaldırabilirsiniz. Bunun için PostList.aspx ve PostList.aspx.cs dosyası içersindeki gerekli yerleri silmeniz yeterli.
Saygılarımla,
Emrah ÇETİNER
ECPager.rar (1,20 kb)