Sdílet prostřednictvím


DataGridView.InvalidateRow(Int32) Metoda

Definice

Zruší platnost zadaného řádku objektu DataGridViewa vynutí jeho překreslení.

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

Parametry

rowIndex
Int32

Index řádku, který má být zneplatněný.

Výjimky

rowIndex není v platném rozsahu od 0 do počtu řádků minus 1.

Příklady

Následující příklad kódu ukazuje, jak použít metodu InvalidateRow ve scénáři malování řádků. V tomto příkladu je řádek zrušen při změně aktuální buňky a vynutí, aby se řádek překresloval sám.

Tento kód je součástí většího příkladu, který je k dispozici v tématu Postupy: Přizpůsobení vzhledu řádků v ovládacím prvku model 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

Poznámky

Pomocí této metody vynutíte, aby se řádek překresloval sám. Tato metoda je užitečná ve scénářích kreslení vlastníkem, kde zpracováváte RowPrePaint události nebo RowPostPaint .

Další informace o malování a zneplatnění najdete v tématu Invalidate.

Platí pro

Viz také