Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

SortByConditionCollection Class

A collection of sort conditions.

Namespace: DevExpress.Xpf.PivotGrid

Assembly: DevExpress.Xpf.PivotGrid.v24.2.dll

NuGet Package: DevExpress.Wpf.PivotGrid

#Declaration

public class SortByConditionCollection :
    PivotChildCollection<SortByCondition>

The following members return SortByConditionCollection objects:

#Remarks

The SortByConditionCollection collection is used to identify the column/row by whose values the current field values will be sorted. This collection is stored in the field’s PivotGridField.SortByConditions property.

A collection of sort conditions contains SortByCondition objects (sort conditions). Each of the conditions corresponds to a field value, so that the whole collection identifies the required column/row. The ‘February 2, 2002’ column in the image below is identified by three sort conditions.

pivotgrid_SortByCondition

#Example

The following example demonstrates how to sort data by a particular column.

In this example, values of the Product Name field are sorted by September 1994 column summary values. To do this, two sort conditions represented by SortByCondition instances are created. One of them identifies the ‘1994’ field value, while another identifies the ‘September’ value. These sort conditions are added to the Product Name field’s PivotGridField.SortByConditions collection to specify the column by which Product Name values should be sorted. A data field that identifies the column is specified via the PivotGridField.SortByField property.

using System.Windows;
using DevExpress.Xpf.PivotGrid;

namespace DXPivotGrid_SortBySummary {
    public partial class MainWindow : Window {
        public MainWindow() {
            InitializeComponent();
            pivotGridControl1.DataSource = 
                (new nwindDataSetTableAdapters.SalesPersonTableAdapter()).GetData();
        }
        private void pivotGridControl1_Loaded(object sender, RoutedEventArgs e) {

            // Locks the pivot grid from updating while the Sort by Summary
            // settings are being customized.
            pivotGridControl1.BeginUpdate();
            try {

                // Specifies a data field whose summary values should be used to sort values
                // of the Product Name field.
                fieldProductName.SortByField = fieldUnitPrice;

                // Specifies a column by which the Product Name field values should be sorted.
                fieldProductName.SortByConditions.Add(new SortByCondition(fieldYear, "1994"));
                fieldProductName.SortByConditions.Add(new SortByCondition(fieldMonth, "9"));
            }
            finally {

                // Unlocks the pivot grid and applies changes.
                pivotGridControl1.EndUpdate();
            }
        }
    }
}

#Inheritance

Object
Collection<SortByCondition>
ObservableCollection<SortByCondition>
DevExpress.Xpf.PivotGrid.Internal.PivotChildCollection<SortByCondition>
SortByConditionCollection
See Also