Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
InvalidateRow Method
Collapse the table of content
Expand the table of content

DataGridView.InvalidateRow Method

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)

'Declaration
Public Sub InvalidateRow ( _
	rowIndex As Integer _
)

Parameters

rowIndex
Type: System.Int32

The index of the row to invalidate.

ExceptionCondition
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. 
Sub dataGridView1_CurrentCellChanged(ByVal sender As Object, _
    ByVal e As EventArgs) Handles dataGridView1.CurrentCellChanged

    If oldRowIndex <> -1 Then 
        Me.dataGridView1.InvalidateRow(oldRowIndex)
    End If
    oldRowIndex = Me.dataGridView1.CurrentCellAddress.Y

End Sub 'dataGridView1_CurrentCellChanged

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft