This documentation is archived and is not being maintained.

DataGridView.InvalidateRow Method

Note: This method is new in the .NET Framework version 2.0.

Invalidates the specified row of the DataGridView, forcing it to be repainted.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

public void InvalidateRow (
	int rowIndex
)
public void InvalidateRow (
	int rowIndex
)
public function InvalidateRow (
	rowIndex : int
)

Parameters

rowIndex

The index of the row to invalidate.

Exception typeCondition

ArgumentOutOfRangeException

rowIndex is not in the valid range of 0 to the number of rows minus 1.

Use this method to force a row to repaint itself. This method is useful in owner-drawing scenarios where you handle the RowPrePaint or RowPostPaint events.

For more information about painting and invalidation, see Invalidate.

The following code example illustrates how to use the InvalidateRow method in a row-painting scenario. In the example, the row is invalidated when the current cell changes, forcing the row to repaint itself.

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

// Forces the row to repaint itself when the user changes the 
// current cell. This is necessary to refresh the focus rectangle.
void dataGridView1_CurrentCellChanged(object sender, EventArgs e)
{
    if (oldRowIndex != -1)
    {
        this.dataGridView1.InvalidateRow(oldRowIndex);
    }
    oldRowIndex = this.dataGridView1.CurrentCellAddress.Y;
}

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0
Show: