How to: Format Data in the Windows Forms DataGridView Control


The following procedures demonstrate basic formatting of cell values using the DefaultCellStyle property of a DataGridView control and of specific columns in a control. For information about advanced data formatting, see How to: Customize Data Formatting in the Windows Forms DataGridView Control.

To format currency and date values

  • Set the Format property of a DataGridViewCellStyle. The following code example sets the format for specific columns using the DefaultCellStyle property of the columns. Values in the UnitPrice column appear in the current culture-specific currency format, with negative values surrounded by parentheses. Values in the ShipDate column appear in the current culture-specific short date format. For more information about Format values, see Formatting Types in the .NET Framework.

    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
    this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";

To customize the display of null database values

To enable wordwrap in text-based cells

To specify the text alignment of DataGridView cells


private void SetFormatting()
    this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";
    this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";
        .Alignment = DataGridViewContentAlignment.MiddleRight;
    this.dataGridView1.DefaultCellStyle.NullValue = "no entry";
    this.dataGridView1.DefaultCellStyle.WrapMode =

Compiling the Code

These examples require:

Robust Programming

For maximum scalability, you should share DataGridViewCellStyle objects across multiple rows, columns, or cells that use the same styles rather than setting the style properties for each element separately. For more information, see Best Practices for Scaling the Windows Forms DataGridView Control.