GridDataColumnSettings.SortMode Property
Specifies how the control sorts data in a column (a row for ASPxVerticalGrid).
Namespace: DevExpress.Web
Assembly: DevExpress.Web.v24.2.dll
Declaration
Property Value
Type | Default | Description |
---|---|---|
ColumnSortMode | Default | One of the ColumnSortMode enumeration values. |
Available values:
Name | Description |
---|---|
Default | The actual sort mode is determined by a control. See the property description for more details. |
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 | Applies sort options specified in the In data grids, this mode also applies group options from the |
Remarks
Specify the SortMode
property to define the column’s sort algorithm.
When a column’s SortMode
property is set to Default
, the column behaves as follows:
Applies the sort algorithm specified by the grid’s BehaviorSettings.SortMode property.
Applies the
Value
sort algorithm if the grid’s BehaviorSettings.SortMode property is set toDefault
.
To apply custom sort settings to a column, follow the steps below:
Set the
SortMode
property toCustom
.Handle the ASPxGridView.CustomColumnSort, ASPxVerticalGrid.CustomRowSort, or ASPxCardView.CustomColumnSort event.
Example
The example below sorts the Country column by character length in descending order.
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="false"
OnCustomColumnSort="grid_CustomColumnSort">
<Columns>
<dx:GridViewDataColumn FieldName="Country" SortOrder="Descending">
<Settings SortMode="Custom" />
</dx:GridViewDataColumn>
<%--...--%>
</Columns>
</dx:ASPxGridView>
protected void grid_CustomColumnSort(object sender, DevExpress.Web.CustomColumnSortEventArgs e) {
if(e.Column.FieldName == "Country") {
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;
}
}
For more information on the sort mode in a particular control, refer to the following topics: