C# DevExpress GridControl Kodla Bir Sütuna Filtre Uygulama

C# DevExpress GridControl Kodla Bir Sütuna Filtre Uygulama

5 Eylül 2019 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 42
Yaklaşık okuma süresi : 2 DK
C# XML Dosyası ile DataSet Nasıl Oluşturulur ve Okunur?
C# DevExpress PictureEdit Resim Döndür ve Kaydet

C# DevExpress GridControl Kodla Bir Sütuna Filtre Uygulama, dersim ile C# eğitim setime devam ediyorum. Bu dersimde DevExpress GridControl nesnesine kod ile filtre uygulama işlemine bakacağız.

C# DevExpress GridControl Kodla Bir Sütuna Filtre Uygulama

DevExpress kullanıyorsanız, şüphesiz en sevdiğiniz nesne GridControl / GridView’dir. Çünkü kod yazmadan inanılmaz özelleştirmeler yapabiliyoruz. Ancak bazen kod ile özelleştirmeler yapmak durumunda kalıyoruz. Örneğin benim için bu dersi yazma sebebim olan istek, bir sql sorgusunu gridview ‘de gösterdikten sonra grid üzerine filtreler vererek kontrol süresini kısaltmak.

Elbette bu filtreleri sql sorgusu ile verebilirdim ama o işime gelmiyor çünkü sorgudan devasa boyutta bilgi geliyor. Kullanıcı her filtre vermesinde tekrar tekrar sql ‘e gidip tekrar sorgu çekilmesi ve listenin yenilenmesi kanser edici bir hale dönüşüyor. Bu yüzden hızlı bir şekilde kullanım ve kontrol sağlamak amacı ile gridview üzerinde filtreler vererek bir kere yüklenen liste üzerinde çalışmak daha mantıklı oluyor.

Advertisements

 

Nasıl yapılır: Kodla Bir Sütuna Filtre Uygulama

Şimdi bu filtreleri nasıl vereceğimizi görelim.

Gerekli olan NameSpace;

using DevExpress.XtraGrid.Columns;

Aşağıdaki kod, gönderen ülke adları ‘F’ ile başlayan kayıtları seçer. Gerekli filtre, bir ColumnFilterInfo nesnesi kullanılarak oluşturulur . Daha sonra GridColumn.FilterInfo özelliğine atanır .

gridView1.Columns["GonderenUlke"].FilterInfo =   new ColumnFilterInfo("[GonderenUlke] LIKE 'F%'");

Yukarıda gördüğünüz şekilde SQL sorgularında where kısmına benzer şekilde kullanım yapıyoruz. Şimdi bir kaç örnek daha görelim.

 

Diğer örneğimiz için bu NameSpace’de gereklidir.

using DevExpress.XtraGrid.Views.Base;
ColumnView view = gridView1;
view.ActiveFilter.Add(view.Columns["KategoriAdı"],   new ColumnFilterInfo("[KategoriAdı] Like 'c%'", ""));

Yukarıdaki örnekteki kod, bir görünüme ColumnView.ActiveFilter nesnesi aracılığıyla bir görünüme filtre koşulunun nasıl ekleneceğini gösterir . Filtre koşulu, KategoriAdı alanları ‘c’ ile başlayan kayıtları seçer.

İlk örnektekinden farklı bir şekilde verilmiş bir filtredir.

İlgili İçerik  C# Textbox Sadece Sayı Harf Girişi Yaptırmak

 

Burada birden fazla da filtre verebiliriz. O işlemi de bir görelim.

using DevExpress.XtraGrid.Views.Base;
using DevExpress.XtraGrid.Columns;


ColumnView view = gridView1;
ViewColumnFilterInfo viewFilterInfo = new ViewColumnFilterInfo(view.Columns["KategoriAdı"], 
  new ColumnFilterInfo("[KategoriAdı] = 'Haber' OR [KategoriAdı] = 'Makale'", ""));
view.ActiveFilter.Add(viewFilterInfo);

Gördüğünüz gibi KategoriAdı kolonu üzerinden Haber Veya Makale olanları istedik.

Yukdarıda bahsettiğim gibi SQL sorgularımızdaki Where kısmında yazdığımız şartlar gibi. Aralarında Çok bir fark yok.

 


C# DevExpress GridControl Kodla Bir Sütuna Filtre Uygula dersimiz de bu kadar arkadaşlar. Diğer derslerimizde görüşmek üzere.

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…

Takipte ve Sağlıcakla kalın. 😉

C# XML Dosyası ile DataSet Nasıl Oluşturulur ve Okunur?
C# DevExpress PictureEdit Resim Döndür ve Kaydet