Skip to main content
A newer version of this page is available. .
Tab

ASPxGridView.ApplyFilterToColumn(GridViewDataColumn, CriteriaOperator) Method

Applies the specified filter criteria to the specified column.

Namespace: DevExpress.Web

Assembly: DevExpress.Web.v18.2.dll

Declaration

public virtual void ApplyFilterToColumn(
    GridViewDataColumn column,
    CriteriaOperator criteria
)

Parameters

Name Type Description
column GridViewDataColumn

A GridViewDataColumn descendant that is the data column.

criteria CriteriaOperator

A String value that specifies the filter expression.

Remarks

The ApplyFilterToColumn method allows you to apply a filter criteria to the specified column.

Example

In some cases, when the default filter row editor’s functionality is not enough, you can provide custom filter cell content using the GridViewColumn.FilterTemplate.

In this example, a default cell editor is replaced with the ASPxGridLookup control. The control’s ASPxClientEdit.ValueChanged client-side event is used to send a callback to the server side, invoking the grid’s ASPxGridView.CustomCallback event. In the event handler, a filter criteria is created and applied to the grid using the ASPxGridView.ApplyFilterToColumn method.

using DevExpress.Data.Filtering;
using DevExpress.Web.ASPxGridLookup;
using DevExpress.Web.ASPxGridView;

public partial class _Default : System.Web.UI.Page {
    protected void Grid_CustomCallback(object sender, ASPxGridViewCustomCallbackEventArgs e) {
        if(e.Parameters == "FilterByCategories") {
            var column = Grid.DataColumns["CategoryName"];
            var lookup = Grid.FindFilterCellTemplateControl(column, "Lookup") as ASPxGridLookup;
            if(lookup != null)
                Grid.ApplyFilterToColumn(column, CreateCriteria(lookup, column.FieldName));
        }
    }

    protected CriteriaOperator CreateCriteria(ASPxGridLookup gridLookup, string fieldName) {
        var values = gridLookup.GridView.GetSelectedFieldValues(fieldName);
        return values.Count > 0 ? new InOperator(fieldName, values) : null;
    }
}
See Also