Back to Devexpress

GroupSummarySortInfo Class

windowsforms-devexpress-dot-xtragrid-dot-columns-b613d0be.md

latest5.6 KB
Original Source

GroupSummarySortInfo Class

Represents an element in a GroupSummarySortInfoCollection.

Namespace : DevExpress.XtraGrid.Columns

Assembly : DevExpress.XtraGrid.v25.2.dll

NuGet Packages : DevExpress.Win.Grid, DevExpress.Win.Navigation

Declaration

csharp
public class GroupSummarySortInfo
vb
Public Class GroupSummarySortInfo

The following members return GroupSummarySortInfo objects:

Remarks

Group rows can be sorted by summary values. To do this create GroupSummarySortInfo objects and add them to the GridView.GroupSummarySortInfo collection via the GroupSummarySortInfoCollection.Add method.

The GroupSummarySortInfo objects contain the information required to sort group rows by summary values. This includes the nesting level of the group rows that are to be sorted by the summary values and the sort order and summary item which is used to calculate summary values for groups of rows.

To cancel any sorting of the group rows by summary values, remove the corresponding GroupSummarySortInfo object from the collection. Note that the GroupSummarySortInfo objects are automatically removed from the collection after the sort order of the group columns they correspond to has been changed.

For more information on sorting group rows by summary values, see the Working with Summaries in Code. Custom Summaries document.

Example

The following example shows how to sort the group rows that reside at the first grouping level by summary values. The group summaries are calculated by the Freight column’s values.

The image below shows the result.

csharp
using DevExpress.Data;
using DevExpress.XtraGrid;
using DevExpress.XtraGrid.Columns;

GridSummaryItem summaryItemMaxFreight;
private void Form1_Load(object sender, System.EventArgs e) {
   // ...
   // Creating a new summary item and adding it the view's summary item collection.
   summaryItemMaxFreight = gridView1.GroupSummary.Add(SummaryItemType.Max, 
     "Freight", null, String.Empty);
}

private void button1_Click(object sender, System.EventArgs e) {
   GridColumn summaryColumn = gridView1.Columns["Freight"];
   if(summaryColumn.GroupIndex < 0 && gridView1.GroupCount > 0) {
      GridColumn firstGroupingColumn = gridView1.SortInfo[0].Column;
      gridView1.GroupSummarySortInfo.Add(summaryItemMaxFreight, 
        ColumnSortOrder.Ascending, firstGroupingColumn);
   }
}
vb
Imports DevExpress.Data
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns

Dim summaryItemMaxFreight As GridSummaryItem
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles MyBase.Load
    ' ...
    ' Creating a new summary item and adding it the view's summary item collection.
    summaryItemMaxFreight = GridView1.GroupSummary.Add(SummaryItemType.Max, _
      "Freight", Nothing, String.Empty)
End Sub

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles Button1.Click
    Dim summaryColumn As GridColumn = GridView1.Columns("Freight")
    If summaryColumn.GroupIndex < 0 And GridView1.GroupCount > 0 Then
        Dim firstGroupingColumn As GridColumn = GridView1.SortInfo(0).Column
        GridView1.GroupSummarySortInfo.Add(summaryItemMaxFreight, _
          ColumnSortOrder.Ascending, firstGroupingColumn)
    End If
End Sub

Inheritance

Object GroupSummarySortInfo

See Also

GroupSummarySortInfo Members

GroupSummarySortInfo

Summaries

DevExpress.XtraGrid.Columns Namespace