Devexpress XtraGrid Row Background rengini değiştirmek

  • 24.10.2011 02:37
  • Devexpress
  • 9897

    Bu ufak makalede Devexpress XtraGrid kullanirken bir satirin arkaplan rengini nasil degistirildigini ögrenebilirsiniz. Ayni yöntemi kullanarak hücrelerin (Cell) arkaplan rengini de degistirebilirsiniz.
    
    Devexpress XtraGrid kullanirken satirin arkaplan rengini degistirmek, klasik yöntemler gibi degil. Mesela windowsun normal componentlerinde bu islemi direkt rowbacground propertysi ile yaparken devexpresste bunu bir metod içerisine gömmüsler. Yani XtraGrid kod tarafinda olusturulurken, yazilan CustomDrawCell diye bir metod içerisine yazdigimiz kodlarla bir satirin arkaplanini degistirebiliyoruz. Metodun tamamini ekliyorum. Siz de XtraGridlerdeki satir backgroundlarini kullanirken bu islemi yapabilirsiniz. Iste o metod:
 

private void gvMusteriListesi_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)

        {

            bool hizmet = ((Musteri)gvMusteriListesi.GetRow(e.RowHandle)).HizmetEkliMi;

            if (!hizmet)

                e.Appearance.BackColor = Color.LightGray;

        }


Buradaki islemi kisaca anlatacak olursak: Projemiz çalistiginda XtraGrid olusurken her satir olustugunda e.RowHandle ile o andaki satirin indexini aliyor. Yani 1. satir olusuyorsa o satiri aliyorum ve Musteri nesneme cast ediyorum. Daha sonra Musteri nesnemin HizmetEkliMi propertysine bakip eger true degil ise o satirin arkaplanini gri renge boyuyorum. Hepsi bu kadar.

Siz de düşüncelerinizi yazabilirsiniz:

;