[Expand]General Information
[Expand]WinForms Controls
[Collapse]ASP.NET Controls and MVC Extensions
 [Expand]Prerequisites
 [Expand]What's Installed
 [Expand]Common Concepts
 [Expand]ASP.NET WebForms Controls
 [Expand]ASP.NET MVC Extensions
 [Expand]Localization
 [Expand]Redistribution and Deployment
  Get More Help
 [Collapse]API Reference
  [Expand]DevExpress.Data.Linq
  [Expand]DevExpress.Web
  [Expand]DevExpress.Web.ASPxGauges
  [Expand]DevExpress.Web.ASPxGauges.Base
  [Expand]DevExpress.Web.ASPxGauges.Scripts
  [Expand]DevExpress.Web.ASPxHtmlEditor
  [Expand]DevExpress.Web.ASPxHtmlEditor.Localization
  [Expand]DevExpress.Web.ASPxHtmlEditor.Scripts
  [Collapse]DevExpress.Web.ASPxPivotGrid
   [Expand]ASPxPivotCustomizationControl Class
   [Collapse]ASPxPivotGrid Class
     ASPxPivotGrid Members
     ASPxPivotGrid Constructor
    [Expand]ASPxPivotGrid Properties
    [Collapse]ASPxPivotGrid Events
      AddPopupMenuItem Event
      AfterPerformCallback Event
      BeforeGetCallbackResult Event
      BeforeLoadLayout Event
      BeforePerformDataSelect Event
      BeginRefresh Event
      ClientLayout Event
      ControlHierarchyCreated Event
      CustomCallback Event
      CustomCellDisplayText Event
      CustomCellStyle Event
      CustomCellValue Event
      CustomChartDataSourceData Event
      CustomChartDataSourceRows Event
      CustomCustomizationFormSort Event
      CustomFieldSort Event
      CustomFieldValueCells Event
      CustomFilterExpressionDisplayText Event
      CustomFilterPopupItems Event
      CustomGroupInterval Event
      CustomJsProperties Event
      CustomLoadCallbackState Event
      CustomSaveCallbackState Event
      CustomServerModeSort Event
      CustomSummary Event
      CustomUnboundFieldData Event
      DataAreaPopupCreated Event
      DataSourceChanged Event
      EndRefresh Event
      FieldAreaChanged Event
      FieldAreaChanging Event
      FieldAreaIndexChanged Event
      FieldExpandedInFieldGroupChanged Event
      FieldFilterChanged Event
      FieldFilterChanging Event
      FieldPropertyChanged Event
      FieldUnboundExpressionChanged Event
      FieldValueCollapsed Event
      FieldValueCollapsing Event
      FieldValueDisplayText Event
      FieldValueExpanded Event
      FieldValueExpanding Event
      FieldValueNotExpanded Event
      FieldVisibleChanged Event
      FilterControlCustomValueDisplayText Event
      FilterControlOperationVisibility Event
      FilterControlParseValue Event
      GridLayout Event
      GroupFilterChanged Event
      HtmlCellPrepared Event
      HtmlFieldValuePrepared Event
      LayoutUpgrade Event
      OLAPException Event
      OLAPQueryTimeout Event
      PageIndexChanged Event
      PopupMenuCreated Event
      PrefilterCriteriaChanged Event
      QueryException Event
    [Expand]ASPxPivotGrid Methods
   [Expand]ASPxPivotGridExporter Class
   [Expand]ASPxPivotGridPager Class
   [Expand]ASPxPivotGridPopupMenu Class
   [Expand]CustomCustomizationFormSortEventArgs Class
   [Expand]CustomFieldDataEventArgs Class
    CustomFieldDataEventHandler Delegate
   [Expand]CustomizePivotCellEventArgs Class
    CustomizePivotCellEventHandler Delegate
   [Expand]CustomServerModeSortEventArgs Class
   [Expand]FieldValueCell Class
    MenuItemEnum Enumeration
    PagerAlign Enumeration
   [Expand]PivotAddPopupMenuItemEventArgs Class
    PivotAddPopupMenuItemEventHandler Delegate
   [Expand]PivotAreaChangingEventArgs Class
    PivotAreaChangingEventHandler Delegate
   [Expand]PivotAreaStyle Class
   [Expand]PivotCellBaseEventArgs Class
   [Expand]PivotCellDisplayTextEventArgs Class
    PivotCellDisplayTextEventHandler Delegate
   [Expand]PivotCellStyle Class
   [Expand]PivotCellValueEventArgs Class
   [Expand]PivotChartDataSourceRow Class
    PivotCollapsedStateStoreMode Enumeration
    PivotCustomCallbackEventHandler Delegate
   [Expand]PivotCustomCellStyleEventArgs Class
    PivotCustomCellStyleEventHandler Delegate
   [Expand]PivotCustomChartDataSourceDataEventArgs Class
    PivotCustomChartDataSourceDataEventHandler Delegate
   [Expand]PivotCustomChartDataSourceRowsEventArgs Class
    PivotCustomChartDataSourceRowsEventHandler Delegate
   [Expand]PivotCustomFieldValueCellsEventArgs Class
   [Expand]PivotCustomFilterPopupItemsEventArgs Class
   [Expand]PivotCustomGroupIntervalEventArgs Class
   [Expand]PivotCustomizationFormImages Class
   [Expand]PivotDataAreaPopupCreatedEventArgs Class
    PivotDataHeadersDisplayMode Enumeration
   [Expand]PivotFieldDisplayTextEventArgs Class
    PivotFieldDisplayTextEventHandler Delegate
   [Expand]PivotFieldEventArgs Class
    PivotFieldEventHandler Delegate
   [Expand]PivotFieldFilterChangingEventArgs Class
    PivotFieldFilterChangingEventHandler Delegate
   [Expand]PivotFieldPropertyChangedEventArgs Class
    PivotFieldPropertyChangedEventHandler Delegate
   [Expand]PivotFieldStateChangedCancelEventArgs Class
    PivotFieldStateChangedCancelEventHandler Delegate
   [Expand]PivotFieldStateChangedEventArgs Class
    PivotFieldStateChangedEventHandler Delegate
   [Expand]PivotFieldValueEventArgs Class
    PivotFieldValueEventHandler Delegate
   [Expand]PivotFieldValueStyle Class
   [Expand]PivotFilterButtonPanelStyle Class
   [Expand]PivotFilterButtonStyle Class
   [Expand]PivotFilterItemStyle Class
   [Expand]PivotFilterStyle Class
   [Expand]PivotGridCallbackStateEventArgs Class
    PivotGridCallbackStateEventHandler Delegate
   [Expand]PivotGridCellTemplateContainer Class
   [Expand]PivotGridCellTemplateItem Class
   [Expand]PivotGridClientSideEvents Class
   [Expand]PivotGridCustomCallbackEventArgs Class
   [Expand]PivotGridCustomFieldSortEventArgs Class
    PivotGridCustomFieldSortEventHandler Delegate
    PivotGridCustomGroupIntervalEventHandler Delegate
   [Expand]PivotGridCustomSummaryEventArgs Class
    PivotGridCustomSummaryEventHandler Delegate
   [Expand]PivotGridCustomTotal Class
   [Expand]PivotGridCustomTotalCollection Class
   [Expand]PivotGridEmptyAreaTemplateContainer Class
   [Expand]PivotGridField Class
   [Expand]PivotGridFieldCollection Class
   [Expand]PivotGridFieldValueTemplateContainer Class
   [Expand]PivotGridFieldValueTemplateItem Class
   [Expand]PivotGridHeaderTemplateContainer Class
   [Expand]PivotGridImageProperties Class
   [Expand]PivotGridImages Class
   [Expand]PivotGridPagerStyles Class
    PivotGridPopupMenuType Enumeration
    PivotGridResetOptions Enumeration
   [Expand]PivotGridStyles Class
   [Expand]PivotGridWebFieldOptions Class
   [Expand]PivotGridWebGroup Class
   [Expand]PivotGridWebGroupCollection Class
   [Expand]PivotGridWebOptionsBehavior Class
   [Expand]PivotGridWebOptionsChartDataSource Class
   [Expand]PivotGridWebOptionsCustomization Class
   [Expand]PivotGridWebOptionsData Class
   [Expand]PivotGridWebOptionsDataField Class
   [Expand]PivotGridWebOptionsFilter Class
   [Expand]PivotGridWebOptionsLayout Class
   [Expand]PivotGridWebOptionsLoadingPanel Class
   [Expand]PivotGridWebOptionsPager Class
   [Expand]PivotGridWebOptionsView Class
   [Expand]PivotGroupEventArgs Class
    PivotGroupEventHandler Delegate
   [Expand]PivotHeaderStyle Class
   [Expand]PivotHtmlCellPreparedEventArgs Class
    PivotHtmlCellPreparedEventHandler Delegate
   [Expand]PivotHtmlFieldValuePreparedEventArgs Class
    PivotHtmlFieldValuePreparedEventHandler Delegate
   [Expand]PivotOlapExceptionEventArgs Class
    PivotOlapExceptionEventHandler Delegate
   [Expand]PivotPopupMenuCreatedEventArgs Class
   [Expand]PivotQueryExceptionEventArgs Class
    PivotQueryExceptionEventHandler Delegate
    PivotScrollingMode Enumeration
   [Expand]PivotXlsExportOptions Class
   [Expand]PivotXlsxExportOptions Class
   [Expand]WebCustomExportCellEventArgs Class
   [Expand]WebCustomExportFieldValueEventArgs Class
   [Expand]WebCustomExportHeaderEventArgs Class
   [Expand]WebPivotGridOptionsPrint Class
  [Expand]DevExpress.Web.ASPxPivotGrid.Data
  [Expand]DevExpress.Web.ASPxPivotGrid.HtmlControls
  [Expand]DevExpress.Web.ASPxPivotGrid.Scripts
  [Expand]DevExpress.Web.ASPxRichEdit
  [Expand]DevExpress.Web.ASPxRichEdit.Localization
  [Expand]DevExpress.Web.ASPxRichEdit.Scripts
  [Expand]DevExpress.Web.ASPxScheduler
  [Expand]DevExpress.Web.ASPxScheduler.Commands
  [Expand]DevExpress.Web.ASPxScheduler.Commands.Dialogs
  [Expand]DevExpress.Web.ASPxScheduler.Controls
  [Expand]DevExpress.Web.ASPxScheduler.Dialogs
  [Expand]DevExpress.Web.ASPxScheduler.Drawing
  [Expand]DevExpress.Web.ASPxScheduler.Localization
  [Expand]DevExpress.Web.ASPxScheduler.Reporting
  [Expand]DevExpress.Web.ASPxScheduler.Scripts
  [Expand]DevExpress.Web.ASPxSpellChecker
  [Expand]DevExpress.Web.ASPxSpellChecker.Localization
  [Expand]DevExpress.Web.ASPxSpellChecker.Scripts
  [Expand]DevExpress.Web.ASPxSpreadsheet
  [Expand]DevExpress.Web.ASPxSpreadsheet.Localization
  [Expand]DevExpress.Web.ASPxSpreadsheet.Scripts
  [Expand]DevExpress.Web.ASPxTreeList
  [Expand]DevExpress.Web.ASPxTreeList.Internal
  [Expand]DevExpress.Web.ASPxTreeList.Localization
  [Expand]DevExpress.Web.ASPxTreeList.Scripts
  [Expand]DevExpress.Web.Captcha
  [Expand]DevExpress.Web.Data
  [Expand]DevExpress.Web.Internal
  [Expand]DevExpress.Web.Localization
  [Expand]DevExpress.Web.Mvc
  [Expand]DevExpress.Web.Mvc.BinderSettings
  [Expand]DevExpress.Web.Mvc.Controllers
  [Expand]DevExpress.Web.MVC.Scripts
  [Expand]DevExpress.Web.Mvc.UI
  [Expand]DevExpress.Web.Office
  [Expand]DevExpress.Web.Office.Internal
  [Expand]DevExpress.Web.Rendering
  [Expand]DevExpress.Web.Scripts
  [Expand]DevExpress.XtraCharts.Web
  [Expand]DevExpress.XtraCharts.Web.Designer
  [Expand]DevExpress.XtraCharts.Web.Scripts
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Reporting
[Expand]Report and Dashboard Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

ASPxPivotGrid.CustomSummary Event

Enables summary values to be calculated manually.

Namespace:DevExpress.Web.ASPxPivotGrid
Assembly:DevExpress.Web.ASPxPivotGrid.v18.1.dll

Expanded Syntax

Expanded Event Data

The event handler receives an argument of type PivotGridCustomSummaryEventArgs containing data related to this event.

The following PivotGridCustomSummaryEventArgs properties provide information specific to this event.
Property Description
ColumnField Gets the column field that corresponds to the current cell.
ColumnFieldValue Gets the value of the column field that corresponds to the current cell.
CustomValue Gets or sets a custom summary value.
DataField Gets the data field against which the summary is calculated.
FieldName Gets the name of the data field against which the summary is calculated.
RowField Gets the row field that corresponds to the current cell.
RowFieldValue Gets the value of the row field that corresponds to the current cell.
SummaryValue Gets an object that contains the values of the predefined summaries which are calculated for the current cell.

Expanded Remarks

The ASPxPivotGrid calculates summaries against data fields. A field's DevExpress.XtraPivotGrid.PivotGridFieldBase.SummaryType property specifies the type of summary function. The control automatically calculates all the predefined summary functions (see the DevExpress.Data.PivotGrid.PivotSummaryType topic for a list of the available functions) and it allows custom summaries to be calculated manually using the CustomSummary event.

To calculate a custom summary for a specific data field, set its DevExpress.XtraPivotGrid.PivotGridFieldBase.SummaryType property to DevExpress.Data.PivotGrid.PivotSummaryType.Custom. In this instance, the CustomSummary event fires for each cell that corresponds to this data field. Use the DevExpress.XtraPivotGrid.Data.PivotGridCustomSummaryEventArgsBase<T>.DataField property to identify the data field.

To identify the kind of a processed cell, you can use the DevExpress.XtraPivotGrid.Data.PivotGridCustomSummaryEventArgsBase<T>.ColumnField and DevExpress.XtraPivotGrid.Data.PivotGridCustomSummaryEventArgsBase<T>.RowField properties.

  • If ColumnField or RowField is null, it means that the processed cell is a Grand Total.
  • If both ColumnField and RowField are last fields in the corresponding area, this means that this is an ordinary cell.
  • In other cases, this is a Total cell.

For example, you can handle the CustomSummary event to calculate custom summaries against multiple fields, particular records, etc. Use the DevExpress.XtraPivotGrid.Data.PivotGridCustomSummaryEventArgsBase<T>.CreateDrillDownDataSource method to get a list of records that correspond to the processed cell. This list can then be traversed to calculate a custom summary. The custom summary value should be assigned to the DevExpress.XtraPivotGrid.Data.PivotGridCustomSummaryEventArgsBase<T>.CustomValue property.

The ASPxPivotGrid calculates all the predefined summaries (AVERAGE, MIN, MAX, SUM, etc.) for each cell. The calculated summaries can be accessed using the DevExpress.XtraPivotGrid.Data.PivotGridCustomSummaryEventArgsBase<T>.SummaryValue property and used in custom summary calculations.

Note

The CustomSummary is not supported in server and OLAP modes.

Expanded Example

Show Me

A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=E1877.

The following example shows how to calculate a custom summary.

Assume that the ASPxPivotGrid control is bound to an "Invoices" table, which contains invoices information (product name, extended price, salesperson, etc). A field that displays the ratio of units cost over $50 is to be added.

In this example, a custom summary is calculated against the "Unit Price" field. Its PivotGridCustomTotalBase.SummaryType property is set to PivotSummaryType.Custom and the caption to "Percentage of units cost over $50". The PivotGridControl.CustomSummary event is handled to only count those records whose total sum exceeds $50. The ratio of these records to all the records is a custom summary value and, therefore, is assigned to the PivotGridCustomSummaryEventArgsBase.CustomValue parameter.

Expanded See Also

Is this topic helpful?​​​​​​​