Version

AverageSummaryCalculator Class

Summary calculator for calculating the average.
Syntax
'Declaration
 
Public Class AverageSummaryCalculator 
   Inherits SummaryCalculator
public class AverageSummaryCalculator : SummaryCalculator 
Example
The following code shows you some of the important settings relating to Summaries Functionality.

Note that the following code assumes there is a XamDataGrid or XamDataPresenter by the name of _dp defined.
Private Sub Window1_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs)
    ' Set the data source.
    _dp.DataSource = _dataSource

    ' AllowSummaries enables the UI for the user to be able to select/unselect
    ' summaries for fields. SummaryUIType specifies whether the user is allowed to
    ' select single or multiple summaries pereach field. It also has options for
    ' enabling summary selection UI for numeric fields only or for all fields.
    ' 
    _dp.FieldSettings.AllowSummaries = True
    _dp.FieldSettings.SummaryUIType = SummaryUIType.MultiSelect

    ' To add a summary, use the SummaryDefinitions property of the FieldLayout.
    ' Each SummaryDefinition object represents a summary calculation to perform
    ' on a field's data. SourceFieldName specifies the field whose data will be
    ' summarized. Key is optional and it simply associates an identifier to the
    ' summary. This identifier can be used later to access the summary via 
    ' indexers of SummaryDefinitionCollection and SummaryResultCollection. 
    ' Calculator specifies the type of calculation to perform on the field data. 
    ' There are five built in calculators of Average, Sum, Minimum, Maximum and 
    ' Count. However you can easily add custom calculators by deriving from 
    ' SummaryCalculator base class and registering the new calculator using the 
    ' SummaryCalculator's Register static method. 
    ' 
    Dim summaryDef1 As SummaryDefinition = _dp.FieldLayouts(0).SummaryDefinitions.Add( _
        "PriceAverage", SummaryCalculator.Average, "Price")

    ' StringFormat specifies the format that will be used to format the summary 
    ' result.
    ' 
    summaryDef1.StringFormat = "Avg={0:C}"

    ' Add a second summary.
    Dim summaryDef2 As SummaryDefinition = _dp.FieldLayouts(0).SummaryDefinitions.Add( _
        "PriceTotal", SummaryCalculator.Sum, "Price")

    summaryDef2.StringFormat = "Total={0:C}"
End Sub
Note that the following code assumes there is a XamDataGrid or XamDataPresenter by the name of _dp defined.
public void Window1_Loaded( object sender, RoutedEventArgs e )
{
	// Set the data source.
	_dp.DataSource = _dataSource;

	// AllowSummaries enables the UI for the user to be able to select/unselect
	// summaries for fields. SummaryUIType specifies whether the user is allowed to
	// select single or multiple summaries pereach field. It also has options for
	// enabling summary selection UI for numeric fields only or for all fields.
	// 
	_dp.FieldSettings.AllowSummaries = true;
	_dp.FieldSettings.SummaryUIType = SummaryUIType.MultiSelect;

	// To add a summary, use the SummaryDefinitions property of the FieldLayout.
	// Each SummaryDefinition object represents a summary calculation to perform
	// on a field's data. SourceFieldName specifies the field whose data will be
	// summarized. Key is optional and it simply associates an identifier to the
	// summary. This identifier can be used later to access the summary via 
	// indexers of SummaryDefinitionCollection and SummaryResultCollection. 
	// Calculator specifies the type of calculation to perform on the field data. 
	// There are five built in calculators of Average, Sum, Minimum, Maximum and 
	// Count. However you can easily add custom calculators by deriving from 
	// SummaryCalculator base class and registering the new calculator using the 
	// SummaryCalculator's Register static method. 
	// 
	SummaryDefinition summaryDef1 = _dp.FieldLayouts[0].SummaryDefinitions.Add( 
		"PriceAverage", SummaryCalculator.Average, "Price" );

	// StringFormat specifies the format that will be used to format the summary 
	// result.
	// 
	summaryDef1.StringFormat = "Avg={0:C}";

	// Add a second summary.
	SummaryDefinition summaryDef2 = _dp.FieldLayouts[0].SummaryDefinitions.Add(
		"PriceTotal", SummaryCalculator.Sum, "Price" );

	summaryDef2.StringFormat = "Total={0:C}";
}
        <igDP:XamDataGrid x:Name="_dp" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >

            
<igDP:XamDataGrid.FieldSettings>
                
<!--
                    AllowSummaries enables the UI for the user to be able to select/unselect summaries for fields.
                    SummaryUIType specifies whether the user is allowed to select single or multiple summaries per
                    each field. It also has options for enabling summary selection UI for numeric fields only or 
                    for all fields.
                
-->
                
<igDP:FieldSettings AllowSummaries="true" SummaryUIType="MultiSelect" />
            
</igDP:XamDataGrid.FieldSettings>

            
<igDP:XamDataGrid.FieldLayouts>
                
<igDP:FieldLayout IsDefault="true" >
                    
<!--
                        Use FieldLayout's SummaryDefinitions collection to add summaries.
                    
-->
                    
<igDP:FieldLayout.SummaryDefinitions>
                        
<!--
                            Each SummaryDefinition object represents a summary calculation to perform on a field's data.
                            SourceFieldName specifies the field whose data will be summarized. 
                            
                            Key is optional and it simply associates an identifier to the summary. This identifier can
                            be used later to access the summary via indexers of SummaryDefinitionCollection and 
                            SummaryResultCollection.
                            
                            Calculator specifies the type of calculation to perform on the field data. There are five
                            built in calculators of Average, Sum, Minimum, Maximum and Count. You can easily add custom
                            calculators by deriving from SummaryCalculator base class and registering the new calculator
                            using the SummaryCalculator's Register static method.
                            
                            StringFormat specifies the format that will be used to format the summary result.
                        
-->
                        
<igDP:SummaryDefinition Key="PriceAverage" SourceFieldName="Price" Calculator="Average" StringFormat="{}Avg={0:C}" />
                        
<igDP:SummaryDefinition Key="PriceTotal" SourceFieldName="Price" Calculator="Sum"  StringFormat="{}Total={0:C}" />
                    
</igDP:FieldLayout.SummaryDefinitions>
                
</igDP:FieldLayout>
            
</igDP:XamDataGrid.FieldLayouts>

        
</igDP:XamDataGrid>
Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also