2016-04-27 11 views
1

Ich bin sehr neu in C# -Programmierung, also hoffe ich, dass dies etwas Einfaches ist, das ich übersehe.DevExpress CustomRowFilter - wie auslösen?

Ich habe ein XtraGrid.GridControl auf meinem Formular, auf das ich einen CustomRowFilter anwenden möchte.

Ich definiere keine Ansichten explizit für das Grid, also dachte ich, ich würde meine CustomRowFilter-Methode zu einem Ereignishandler gegen die MainView auf meinem GridControl hinzufügen - aber ich kann nicht finden, wie ich auf das Ereignis zugreifen kann I ' m nach?

Ist das der richtige Ansatz oder gehe ich den falschen Weg?

private void gridControl1_CustomRowFilter(object sender, RowFilterEventArgs e) 
    { 
     GridView view = sender as GridView; 
     DataView dv = view.DataSource as DataView; 

     if (1==1) //Temp - this should hide everything 
     { 
      e.Visible = false; 
      e.Handled = true; 
     } 
    } 

private void Form1_Load(object sender, EventArgs e) 
    { 
     //Bind the datasource etc... 

     gridControl1.MainView.CustomRowFilter += gridControl1_CustomRowFilter //"Base view does not contain a definition for "CustomRowFilter" 
    } 

Antwort

4

Die CustomRowFilter Ereignis zum GridView und nicht zu GridControl gehört, können Sie das Ereignis Zugriff mit:

private void Form1_Load(object sender, EventArgs e) 
{ 
    (gridControl1.MainView as GridView).CustomRowFilter += gridControl1_CustomRowFilter; 
}