Composite Formatting

  • 3 minutes to read

The Composite Formatting feature allows you to add custom text to the output formatted string.

If numeric values need to be formatted, set the FormatInfo.FormatType property to FormatType.Numeric. To format date/time values, set this property to FormatType.DateTime. To format string values, set this property to FormatType.Custom. Then use the FormatInfo.FormatString property to specify a format pattern.

A format pattern can contain any custom text. To insert a formatted value at any position within this text use the "{0}" placeholder. The complete syntax to define the position of the formatted value is as follows (it is described in the Composite Formatting topic in MSDN):


Below is a quote from the Composite Formatting topic in MSDN that describes this syntax:

"The optional alignment component is a signed integer indicating the preferred formatted field width. If the value of alignment is less than the length of the formatted string, alignment is ignored and the length of the formatted string is used as the field width. The formatted data in the field is right-aligned if alignment is positive, and left-aligned if alignment is negative. If padding is necessary, white space is used. The comma is required if alignment is specified."

"The optional formatString component consists of standard or custom format specifiers. If formatString is not specified, the general ("G") format specifier is used. The colon is required if formatString is specified." See the Format Specifiers topic for a list of the most used specifiers used to format numeric and date/time values.

You can refer to MSDN for more details on the Composite Formatting feature.


The following example demonstrates a way of formatting numeric values and inserting custom display text within the output formatted string.

Assume that a text editor displays numeric identifiers. An identifier should be represented as a four digit field (preceding zeros might be added if necessary); in addition, the "ID:" string needs to be displayed before the formatted identifier. To format values, use the editor's RepositoryItem.DisplayFormat property. The FormatInfo.FormatType property is set to FormatType.Numeric and the FormatInfo.FormatString property is set to an appropriate format pattern.

See the Composite Formatting topic for more details on this formatting type.

For an editor whose BaseEdit.EditValue property is set to 5, the display text will be as follows.



To enable formatted input within editors, use Masks.

textEdit1.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
textEdit1.Properties.DisplayFormat.FormatString = "ID: {0:d4}";