PivotGridControl.FieldValueDisplayText Event

Allows you to change the display text and display field's data in a more user-friendly format.

Namespace: DevExpress.XtraPivotGrid

Assembly: DevExpress.XtraPivotGrid.v20.1.dll

Declaration

public event PivotFieldDisplayTextEventHandler FieldValueDisplayText
Public Event FieldValueDisplayText As PivotFieldDisplayTextEventHandler

Event Data

The FieldValueDisplayText event's data class is PivotFieldDisplayTextEventArgs. The following properties provide information specific to this event:

Property Description
CustomTotal Gets the custom total that corresponds to the currently processed column/row header. Inherited from PivotFieldValueEventArgsBase<T>.
Data For internal use. Inherited from PivotFieldValueEventArgsBase<T>.
DataField Gets the data field that specifies the processed value. Inherited from PivotFieldValueEventArgsBase<T>.
DisplayText Gets or sets the item's display text.
Field Gets the field being processed. Inherited from PivotFieldEventArgsBase<T>.
FieldIndex Gets the field position among the visible fields within the header area. Inherited from PivotFieldValueEventArgsBase<T>.
IsCollapsed Gets whether the processed field value is collapsed. Inherited from PivotFieldValueEventArgsBase<T>.
IsColumn Gets whether the field is displayed within the Column Header Area. Inherited from PivotFieldValueEventArgsBase<T>.
IsOthersValue Gets or sets whether the current header corresponds to the "Others" row/column. Inherited from PivotFieldValueEventArgsBase<T>.
IsPopulatingFilterDropdown Gets whether the current event is called to populate the filter dropdown.
Item For internal use. Inherited from PivotFieldValueEventArgsBase<T>.
MaxIndex Gets the maximum row index (for row fields) or column index (for column fields) that corresponds to the processed field value. Inherited from PivotFieldValueEventArgsBase<T>.
MinIndex Gets the minimum row index (for row fields) or column index (for column fields) that corresponds to the processed field value. Inherited from PivotFieldValueEventArgsBase<T>.
Value Gets the processed item's value.
ValueType Gets the type of the currently processed header of a column or a row. Inherited from PivotFieldValueEventArgsBase<T>.

Remarks

TIP

If you have the Demo Center installed, review the Unbound Fields demo. Check the Display Text Event option.

Do not call the e.CreateDrillDownDataSource method in the FieldValueDisplayText handler. It can return null in certain cases (sorting, filter popup) or cause other issues.

The following table illustrates event data supplied for different visual elements that trigger the FieldValueDisplayText event.

Visual Element (Event Source) e.Field value e.IsPopulatingFilterDropdown value
Field value or Total Header Column field or Row field false
Data Field Header Data field false
Grand Total Header Null false
Item within a filter dropdown Column, row or filter field whose dropdown is invoked true

To specify a text to display, assign a string to the PivotFieldDisplayTextEventArgs.DisplayText property. You can use HTML formatting, as illustrated in the HTML in Field Values live example available in our demo center.

To display field values instead of automatically created and formatted strings, use the following code:

e.DisplayText = e.Value?.ToString()

Use the PivotGridControl.CustomCellDisplayText event or PivotGridFieldBase.CellFormat property to customize the display text of cells in the Data area.

IMPORTANT

Do not change cell values, modify the control's layout, or change the control's object model in the events used for custom control painting. Actions that update the layout can cause the control to malfunction.

Examples

The PivotGridControl.FieldValueDisplayText event allows you to customize field value texts for grand totals.

CustomGrandTotalText

To do this, check the field value type using the PivotFieldValueEventArgsBase<T>.ValueType event parameter and provide the required display texts using PivotFieldDisplayTextEventArgs.DisplayText.

private void pivotGridControl1_FieldValueDisplayText(object sender, DevExpress.XtraPivotGrid.PivotFieldDisplayTextEventArgs e) {
    if (e.ValueType == DevExpress.XtraPivotGrid.PivotGridValueType.GrandTotal) {
        if (e.IsColumn)
            e.DisplayText = "*Custom Column Grand Total*";
        else
            e.DisplayText = "*Custom Row Grand Total*";
    }
}
See Also