16 Mayıs 2018 Çarşamba

Asp.Net Datalist - Koşullu Renklendirme

Merhabalar,

Şimdi ise datalist üzerinde basit bir işlem daha gerçekleştireceğiz. senaryomuz şu şekilde: diyelim ki iki tarih arasındaki faturaları listeledik ve mahsup edilenleri yeşil mahsup edilmeyenleri ise kırmızı renkli görmek istiyoruz. Bunun için öncelikle kıyaslama yapacağımız sütunu bir değişkene atıyoruz. Tabloda görülmeyecek bir değişken ise visible'ını false yapınız. 
Yine datalist'imizin ItemDataBound event'ine kodlarımızı yazıyoruz.

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
    if (((Label)e.Item.FindControl("LBLmahsup")).Text == "True")
        ((Label)e.Item.FindControl("LBLcariadi")).ForeColor = System.Drawing.Color.Green;
    else
        ((Label)e.Item.FindControl("LBLcariadi")).ForeColor = System.Drawing.Color.Red;
}

Bunun dışında ise tasarım tarafında da ayarlama yapabiliriz.

<asp:Label ID="LBLcariadi" runat="server" Text='<%#Eval("CARIADI") %>'
           ForeColor='<%#Eval("DURUM").ToString()=="2"?                                                          System.Drawing.Color.Green:System.Drawing.Color.Red %>'></asp:Label>

Buradaki kodumuz da ise durum sütununda 2 olanları yeşil renkli diğerlerini ise 3 kırmızı renkli yap diyoruz..

Bunun dışında sadece 2 koşul için değil daha fazla koşul içinde kullanabiliriz  Renk özelliğinin yanı sıra cssclass özelliğinde de kullanabiliriz. Diyelim ki listemizdeki taleplerin öncelik durumu olsun, bunlar da normal, acil ve çok acil olmak üzere 3 çeşit olsun. Öncelik tipi normal olanlar yeşil, acil olanlar sarı, çok aciller ise kırmızı listelensin. Burada css verirken bootstrap'ın css'lerini kullanıyorum. Ayrıca text özelliğinde de durumu aktif ise check işaret, değilse x işareti koyuyor.

<asp:Label ID="LBLdurum" runat="server" 
Text='<%#Eval("Durum").ToString()=="Aktif"?"&check;":" X "  %>'
CssClass='<%#Eval("Durum").ToString()=="Aktif"?"label label-success":"label label-danger" %>'></asp:Label>

Bu mantıktan yola çıkarak bu koşullandırmayı; tasarım tarafında datalist, gridview vb  veri listeleme araçları içinde çeşitli yerlerde kullanabilirsiniz.

Herkese İyi Çalışmalar

Hiç yorum yok:

Yorum Gönder

SQL Server - Satırları Birleştirme

Merhaba,  Bu yazımda sql server'da birden çok satırı birleştirip tek satır yapmayı anlatacağım. Senaryomuz şu şekilde olsun mesela; bir...