DataGridViewRowPrePaintEventArgs.InheritedRowStyle Property

Definition

Gets the cell style applied to the row.

C#
public System.Windows.Forms.DataGridViewCellStyle InheritedRowStyle { get; }

Property Value

A DataGridViewCellStyle that contains the cell style currently applied to the row.

Examples

The following code example demonstrates how to use the InheritedRowStyle property to paint a custom background for the selected row. The variable, e, is of type DataGridViewRowPrePaintEventArgs. This code example is part of a larger example provided in How to: Customize the Appearance of Rows in the Windows Forms DataGridView Control.

C#
// Determine whether the cell should be painted
// with the custom selection background.
if ((e.State & DataGridViewElementStates.Selected) ==
            DataGridViewElementStates.Selected)
{
    // Calculate the bounds of the row.
    Rectangle rowBounds = new Rectangle(
        this.dataGridView1.RowHeadersWidth, e.RowBounds.Top,
        this.dataGridView1.Columns.GetColumnsWidth(
            DataGridViewElementStates.Visible) -
        this.dataGridView1.HorizontalScrollingOffset + 1,
        e.RowBounds.Height);

    // Paint the custom selection background.
    using (Brush backbrush =
        new System.Drawing.Drawing2D.LinearGradientBrush(rowBounds,
            this.dataGridView1.DefaultCellStyle.SelectionBackColor,
            e.InheritedRowStyle.ForeColor,
            System.Drawing.Drawing2D.LinearGradientMode.Horizontal))
    {
        e.Graphics.FillRectangle(backbrush, rowBounds);
    }
}

Remarks

The InheritedRowStyle property contains the same values as the row's InheritedStyle property. Directly accessing a DataGridViewRow in the DataGridView can affect performance. Use InheritedRowStyle in the RowPrePaint event to avoid unsharing the row and maintain optimal performance.

The InheritedRowStyle property is read-only. Although you can set the properties of the DataGridViewCellStyle retrieved through the InheritedRowStyle property, the new settings will have no effect.

Applies to

Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

See also