DataGridView.AlternatingRowsDefaultCellStyle Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets the default cell style applied to odd-numbered rows of the DataGridView.
public:
property System::Windows::Forms::DataGridViewCellStyle ^ AlternatingRowsDefaultCellStyle { System::Windows::Forms::DataGridViewCellStyle ^ get(); void set(System::Windows::Forms::DataGridViewCellStyle ^ value); };
public System.Windows.Forms.DataGridViewCellStyle AlternatingRowsDefaultCellStyle { get; set; }
member this.AlternatingRowsDefaultCellStyle : System.Windows.Forms.DataGridViewCellStyle with get, set
Public Property AlternatingRowsDefaultCellStyle As DataGridViewCellStyle
Property Value
A DataGridViewCellStyle to apply to the odd-numbered rows.
Examples
The following code example illustrates how to use this property to create a ledger effect in a DataGridView control. This example is part of a larger example available in the DataGridViewCellStyle class overview.
// Configures the appearance and behavior of a DataGridView control.
private void InitializeDataGridView()
{
// Initialize basic DataGridView properties.
dataGridView1.Dock = DockStyle.Fill;
dataGridView1.BackgroundColor = Color.LightGray;
dataGridView1.BorderStyle = BorderStyle.Fixed3D;
// Set property values appropriate for read-only display and
// limited interactivity.
dataGridView1.AllowUserToAddRows = false;
dataGridView1.AllowUserToDeleteRows = false;
dataGridView1.AllowUserToOrderColumns = true;
dataGridView1.ReadOnly = true;
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
dataGridView1.MultiSelect = false;
dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
dataGridView1.AllowUserToResizeColumns = false;
dataGridView1.ColumnHeadersHeightSizeMode =
DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
dataGridView1.AllowUserToResizeRows = false;
dataGridView1.RowHeadersWidthSizeMode =
DataGridViewRowHeadersWidthSizeMode.DisableResizing;
// Set the selection background color for all the cells.
dataGridView1.DefaultCellStyle.SelectionBackColor = Color.White;
dataGridView1.DefaultCellStyle.SelectionForeColor = Color.Black;
// Set RowHeadersDefaultCellStyle.SelectionBackColor so that its default
// value won't override DataGridView.DefaultCellStyle.SelectionBackColor.
dataGridView1.RowHeadersDefaultCellStyle.SelectionBackColor = Color.Empty;
// Set the background color for all rows and for alternating rows.
// The value for alternating rows overrides the value for all rows.
dataGridView1.RowsDefaultCellStyle.BackColor = Color.LightGray;
dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray;
// Set the row and column header styles.
dataGridView1.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Black;
// Set the Format property on the "Last Prepared" column to cause
// the DateTime to be formatted as "Month, Year".
dataGridView1.Columns["Last Prepared"].DefaultCellStyle.Format = "y";
// Specify a larger font for the "Ratings" column.
using (Font font = new Font(
dataGridView1.DefaultCellStyle.Font.FontFamily, 25, FontStyle.Bold))
{
dataGridView1.Columns["Rating"].DefaultCellStyle.Font = font;
}
// Attach a handler to the CellFormatting event.
dataGridView1.CellFormatting += new
DataGridViewCellFormattingEventHandler(dataGridView1_CellFormatting);
}
' Configures the appearance and behavior of a DataGridView control.
Private Sub InitializeDataGridView()
' Initialize basic DataGridView properties.
dataGridView1.Dock = DockStyle.Fill
dataGridView1.BackgroundColor = Color.LightGray
dataGridView1.BorderStyle = BorderStyle.Fixed3D
' Set property values appropriate for read-only display and
' limited interactivity.
dataGridView1.AllowUserToAddRows = False
dataGridView1.AllowUserToDeleteRows = False
dataGridView1.AllowUserToOrderColumns = True
dataGridView1.ReadOnly = True
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
dataGridView1.MultiSelect = False
dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None
dataGridView1.AllowUserToResizeColumns = False
dataGridView1.ColumnHeadersHeightSizeMode = _
DataGridViewColumnHeadersHeightSizeMode.DisableResizing
dataGridView1.AllowUserToResizeRows = False
dataGridView1.RowHeadersWidthSizeMode = _
DataGridViewRowHeadersWidthSizeMode.DisableResizing
' Set the selection background color for all the cells.
dataGridView1.DefaultCellStyle.SelectionBackColor = Color.White
dataGridView1.DefaultCellStyle.SelectionForeColor = Color.Black
' Set RowHeadersDefaultCellStyle.SelectionBackColor so that its default
' value won't override DataGridView.DefaultCellStyle.SelectionBackColor.
dataGridView1.RowHeadersDefaultCellStyle.SelectionBackColor = Color.Empty
' Set the background color for all rows and for alternating rows.
' The value for alternating rows overrides the value for all rows.
dataGridView1.RowsDefaultCellStyle.BackColor = Color.LightGray
dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray
' Set the row and column header styles.
dataGridView1.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Black
dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Black
' Set the Format property on the "Last Prepared" column to cause
' the DateTime to be formatted as "Month, Year".
dataGridView1.Columns("Last Prepared").DefaultCellStyle.Format = "y"
' Specify a larger font for the "Ratings" column.
Dim font As New Font( _
dataGridView1.DefaultCellStyle.Font.FontFamily, 25, FontStyle.Bold)
Try
dataGridView1.Columns("Rating").DefaultCellStyle.Font = font
Finally
font.Dispose()
End Try
End Sub
Remarks
The DataGridView control displays its cells using the styles indicated by the cell InheritedStyle property, which inherits styles from other properties of type DataGridViewCellStyle. For cells in rows with odd index numbers, the styles specified through the AlternatingRowsDefaultCellStyle property override the styles specified through the DefaultCellStyle, DataGridViewColumn.DefaultCellStyle, and RowsDefaultCellStyle, and are overridden by the styles specified through the DataGridViewRow.DefaultCellStyle and DataGridViewCell.Style properties.
For more information, see Cell Styles in the Windows Forms DataGridView Control.
When getting this property, a DataGridViewCellStyle with default values will be created if the property has not already been accessed. This can cause a performance impact when getting this property for many rows. Whenever possible, use a single DataGridViewCellStyle to set this property for multiple rows. For more information, see Best Practices for Scaling the Windows Forms DataGridView Control.