Provides a base class for grouping items in pivot operations based on object property values. This class enables property-based grouping, sorting, and filtering for LocalDataSourceProvider with support for well-known groups, calculated items, and culture-aware operations.
Definition
Namespace:Telerik.Pivot.Core
Assembly:Telerik.WinControls.PivotGrid.dll
Syntax:
[DataContract]
public abstract class PropertyGroupDescriptionBase : GroupDescription, INotifyPropertyChanged, ISupportInitialize, IServiceProvider, IGroupDescription, IDescriptionBase, INamed, IEditable, ILabelGroupFilterHost, IValueGroupFilterHost, IFilteringDescription, IDistinctValuesDescription, IConditionFactory, IFilterOperatorsProvider
Inheritance: objectCloneableSettingsNodeDescriptionBaseGroupDescriptionBaseGroupDescriptionPropertyGroupDescriptionBase...
Derived Classes:
Implements:
Inherited Members
Constructors
protected PropertyGroupDescriptionBase()
Properties
Gets the collection of calculated items used to create custom groups with predefined subgroups and summarized values. Calculated items allow defining virtual groups that don't exist in the source data but provide additional grouping logic.
[DataMember]
public Collection<CalculatedItem> CalculatedItems { get; }
Gets the CultureInfo used for culture-aware grouping operations. This culture is inherited from the LocalDataSourceProvider and affects sorting, formatting, and comparison operations during grouping.
protected CultureInfo Culture { get; }
Gets or sets the name of the property used for grouping items. This property identifies which field from the data objects should be used to create group keys and organize data.
[DataMember]
public string PropertyName { get; set; }
Methods
Creates a deep copy of this instance by copying core properties and delegating type-specific cloning to derived classes. This method handles the base property copying and calls CloneOverride(Cloneable) for derived class implementation.
protected override sealed void CloneCore(Cloneable source)
The source object to clone from.
Overrides:
Notes to Inheritors If you derive from Cloneable, you may need to override this method to copy all properties. It is essential that all implementations call the base implementation of this method (if you don't call base you should manually copy all needed properties including base properties).
When overridden in derived classes, performs type-specific cloning operations for the derived class properties. This method is called by CloneCore(Cloneable) after base properties have been copied.
protected abstract void CloneOverride(Cloneable source)
The source object to clone from.
Notes to Inheritors: If you derive from Cloneable, you need to override this method to copy all properties. It is essential that all implementations call the base implementation of this method (if you don't call base you should manually copy all needed properties including base properties).
Gets all possible group names by combining unique names from the data with calculated items. This method merges the actual data group names with any defined calculated items to provide a complete list of available groups.
protected override IEnumerable<object> GetAllNames(IEnumerable<object> uniqueNames, IEnumerable<object> parentGroupNames)
The unique group names found in the actual data.
parentGroupNamesIEnumerable<object>The parent group names in the hierarchy.
Returns:IEnumerable<object>
A combined enumerable of unique names and calculated items.
Overrides:
Gets the display name for this group description by trying multiple sources in priority order. Returns the base display name if set, otherwise the field info display name if available, and finally falls back to the property name.
protected override string GetDisplayName()
The display name for this group description.
Overrides:
Gets the unique name for this group description, which is the property name used for grouping. This unique name is used to identify and distinguish this group description from others.
public override string GetUniqueName()
The property name that serves as the unique identifier for this group description.
Overrides:
Returns the group name that would contain the specified item based on the configured property value. This method extracts the property value from the item and processes it to create an appropriate group key.
protected virtual object GroupNameFromItem(object item, int level)
The data item to determine the group for.
levelintThe level of grouping for this group description in the hierarchy.
Returns:The group name object that would contain the specified item.
Exceptions:Thrown when the field information has not been initialized or the item doesn't have the specified property.