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

ASPxGridBehaviorSettings.SortMode Property

Specifies how the control sorts its data.

Namespace: DevExpress.Web

Assembly: DevExpress.Web.v21.2.dll

NuGet Package: DevExpress.Web

Declaration

[DefaultValue(ColumnSortMode.Default)]
public ColumnSortMode SortMode { get; set; }

Property Value

Type Default Description
ColumnSortMode Default

One of the ColumnSortMode enumeration values.

Available values:

Name Description
Default

Sorts the column’s data according to the type of the editor assigned to the column.

The Default option is equivalent to DisplayText for columns that use LookUpEdit, ImageComboBoxEdit and HypertextLabel (RepositoryItemHypertextLabel) in-place editors.

The Default option is equivalent to Value for other columns. Note that for certain editors (TextEdit, ComboBoxEdit, etc) the edit values match the display values.

Value

Sorts the column’s data by the column’s edit values (these are synchronized with the bound data source’s values).

DisplayText

Sorts the column’s data by the column’s display text (the strings displayed within the column’s cells).

Custom

Enables custom sorting of a column’s data. To implement custom sorting, handle the ColumnView.CustomColumnSort event in the GridControl, and the TreeList.CompareNodeValues event in the TreeList.

In the GridControl, the Custom mode also enables custom grouping of rows when grouping is applied against the current column. To implement custom grouping, handle the GridView.CustomColumnGroup event.

Remarks

Specify the SortMode property to define the control’s sort algorithm. To apply custom sort settings to the grid control, follow the steps below:

  1. Set the SortMode property to Custom.
  2. Handle the ASPxGridView.CustomColumnSort, ASPxCardView.CustomColumnSort, or ASPxVerticalGrid.CustomRowSort event.

At the column level, use the GridDataColumnSettings.SortMode property to specify how the control sorts data in a particular column (a row for ASPxVerticalGrid).

For more information on the sort mode in a particular control, refer to the following topics:

Example

The example below sorts data in the grid by character length.

ASPxGridView - GridSortMode

<dx:ASPxGridView ID="grid" runat="server" OnCustomColumnSort="grid_CustomColumnSort">
    <%--...--%>
    <SettingsBehavior SortMode="Custom" />
</dx:ASPxGridView>
protected void grid_CustomColumnSort(object sender, DevExpress.Web.CustomColumnSortEventArgs e) {
    e.Handled = true;
    string s1 = e.Value1.ToString(), s2 = e.Value2.ToString();
    if(s1.Length > s2.Length)
        e.Result = 1;
    else
        if(s1.Length == s2.Length)
        e.Result = Comparer.Default.Compare(s1, s2);
    else
        e.Result = -1;
}

Online Demos

Run Demo: ASPxGridView - Sort Data

Run Demo: ASPxCardView - Sorting

Run Demo: ASPxVerticalGrid - Sorting

See Also