Expand Minimize
This topic has not yet been rated - Rate this topic

DataGridView.RowHeadersWidth Property

Gets or sets the width, in pixels, of the column that contains the row headers.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)
public int RowHeadersWidth { get; set; }

Property Value

Type: System.Int32
The width, in pixels, of the column that contains row headers. The default is 43.
ExceptionCondition
ArgumentOutOfRangeException

The specified value when setting this property is less than the minimum width of 4 pixels or is greater than the maximum width of 32768 pixels.

The RowHeadersWidth property can be used to resize the row header column to a specified width. To adjust the width of this column to fit the contents of the row header cells, use the AutoResizeRowHeadersWidth method.

The following code example illustrates how to use the RowHeadersWidth property in a row-painting scenario. In the example, the value of this property is used to calculate the bounds within which a custom background is drawn.

This code is part of a larger example available in How to: Customize the Appearance of Rows in the Windows Forms DataGridView Control.


// Paints the custom selection background for selected rows.
void dataGridView1_RowPrePaint(object sender,
        DataGridViewRowPrePaintEventArgs e)
{
    // Do not automatically paint the focus rectangle.
    e.PaintParts &= ~DataGridViewPaintParts.Focus;

    // 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);
        }
    }
}


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.