DataGridView.InvalidateRow(Int32) Método

Definição

Invalida a linha especificada do DataGridView, forçando-a a ser pintada novamente.

public:
 void InvalidateRow(int rowIndex);
public void InvalidateRow (int rowIndex);
member this.InvalidateRow : int -> unit
Public Sub InvalidateRow (rowIndex As Integer)

Parâmetros

rowIndex
Int32

O índice da linha a ser invalidada.

Exceções

rowIndex não está no intervalo válido de 0 ao número de linhas menos 1.

Exemplos

O exemplo de código a seguir ilustra como usar o InvalidateRow método em um cenário de pintura de linha. No exemplo, a linha é invalidada quando a célula atual é alterada, forçando a linha a se repintar.

Esse código faz parte de um exemplo maior disponível em Como personalizar a aparência de linhas no controle Windows Forms DataGridView.

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

Comentários

Use esse método para forçar uma linha a se repintar. Esse método é útil em cenários de desenho de proprietário em que você manipula os RowPrePaint eventos ou RowPostPaint .

Para obter mais informações sobre pintura e invalidação, consulte Invalidate.

Aplica-se a

Confira também