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>