Skip to main content

Formatting Display Values

  • 2 minutes to read

Cell values can be formatted using one of the following ways.

  • Using Standard Formatting Mechanism

    The standard formatting mechanism described in MSDN allows you to format values using standard format patterns. For instance, a numeric value can be represented as a currency amount, a hexadecimal value, in scientific notation, etc. A date/time value can be represented in the standard Short Date, Long Date or Full Date/Time form.

    
    <dxg:GridColumn FieldName="OrderDate">
        <dxg:GridColumn.EditSettings>
            <dxe:DateEditSettings DisplayFormat="D"/>
        </dxg:GridColumn.EditSettings>
    </dxg:GridColumn>
    
  • Customizing Mask Settings

    Data editors shipped with DXEditors for the WPF library allow you to use masks to restrict data input as well as format data output.

    
    <dxg:GridColumn FieldName="UnitPrice">
        <dxg:GridColumn.EditSettings>
            <dxe:SpinEditSettings MaskType="Numeric"
                                    Mask="c"
                                    MaskUseAsDisplayFormat="True"/>
        </dxg:GridColumn.EditSettings>
    </dxg:GridColumn>
    

    To learn more, see Mask Types and Masked Input Overview.

  • Handling the CustomColumnDisplayText Event

    The GridControl.CustomColumnDisplayText event is fired for each cell displayed within a column allowing you to provide custom text for it. This event is fired for both bound and unbound columns.

    
    private void grid_CustomColumnDisplayText(object sender, DevExpress.Xpf.Grid.CustomColumnDisplayTextEventArgs e) {
        if (e.Column.FieldName != "Quantity") return;
        if (Convert.ToInt32(e.Value) < 10)
            e.DisplayText = string.Format("{0} (Sale)", e.Value);
    }
    

To format data summaries, use the SummaryItemBase.DisplayFormat property.


<dxg:GridControl.TotalSummary>
    <dxg:GridSummaryItem FieldName="UnitPrice"
                            SummaryType="Max"
                            DisplayFormat="Maximum Price: {0:c2}" />
    <dxg:GridSummaryItem FieldName="UnitPrice"
                            SummaryType="Min"
                            DisplayFormat="Minimum Price: {0:c2}" />
</dxg:GridControl.TotalSummary>
<dxg:GridControl.GroupSummary>
    <dxg:GridSummaryItem FieldName="UnitPrice"
                            SummaryType="Average"
                            DisplayFormat="Average Price: {0:c2}"/>
</dxg:GridControl.GroupSummary>

dxgrid-DataFormatting