The requested page is not available for the requested platform. You are viewing the content for Default platform.

ASPxClientEdit.ValueChanged Event

Fires after the editor's value has been changed by end-user interactions.

Declaration

ValueChanged: ASPxClientEvent<ASPxClientProcessingModeEventHandler<ASPxClientEdit>>

Event Data

The ValueChanged event handler receives an argument of the ASPxClientProcessingModeEventArgs type. The following properties provide information specific to this event.

Property Description
processOnServer Gets or sets a value that specifies whether the event should be finally processed on the server side.

Remarks

Handle the ValueChanged event to respond to an editor's value being changed on the client side.

Important

By design, the ValueChanged event is raised only in response to end-user actions.

Note
  • For the ASPxClientGridLookup class, the processOnServer property is not in effect. When the ValueChanged event occurs, a callback is sent to the server regardless of the processOnServer property values.
  • If a combo box is located inside a grid view (GridViewDataComboBoxColumn), the ValueChanged event is not in effect.

Examples

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