Sdílet prostřednictvím


DataGridView.RowDirtyStateNeeded Událost

Definice

Vyvolá se, VirtualMode když je vlastnost DataGridView ovládacího prvku true a DataGridView je třeba určit, zda aktuální řádek obsahuje nepotvrzené změny.

public:
 event System::Windows::Forms::QuestionEventHandler ^ RowDirtyStateNeeded;
public event System.Windows.Forms.QuestionEventHandler RowDirtyStateNeeded;
public event System.Windows.Forms.QuestionEventHandler? RowDirtyStateNeeded;
member this.RowDirtyStateNeeded : System.Windows.Forms.QuestionEventHandler 
Public Custom Event RowDirtyStateNeeded As QuestionEventHandler 

Event Type

Příklady

Následující příklad kódu ukazuje, jak zpracovat tuto událost k poskytnutí oboru potvrzení na úrovni buňky, což znamená, že uživatel může vrátit změny pouze k aktuální buňce. V oboru potvrzení na úrovni buňky je řádek považován za nepotvrzené změny pouze v případě, že aktuální buňka obsahuje nepotvrzené změny, nikoli v případě, že jakákoli buňka na řádku obsahuje nepotvrzené změny. Tento příklad je součástí většího příkladu, který je k dispozici v návodu: Implementace virtuálního režimu v ovládacím prvku model Windows Forms DataGridView.

void dataGridView1_RowDirtyStateNeeded( Object^ /*sender*/,
    System::Windows::Forms::QuestionEventArgs^ e )
{
   if (  !rowScopeCommit )
   {
      
      // In cell-level commit scope, indicate whether the value
      // of the current cell has been modified.
      e->Response = this->dataGridView1->IsCurrentCellDirty;
   }
}
private void dataGridView1_RowDirtyStateNeeded(object sender,
    System.Windows.Forms.QuestionEventArgs e)
{
    if (!rowScopeCommit)
    {
        // In cell-level commit scope, indicate whether the value
        // of the current cell has been modified.
        e.Response = this.dataGridView1.IsCurrentCellDirty;
    }
}
Private Sub dataGridView1_RowDirtyStateNeeded(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.QuestionEventArgs) _
    Handles dataGridView1.RowDirtyStateNeeded

    If Not rowScopeCommit Then

        ' In cell-level commit scope, indicate whether the value
        ' of the current cell has been modified.
        e.Response = Me.dataGridView1.IsCurrentCellDirty

    End If

End Sub

Poznámky

Ve výchozím nastavení tato událost nastaví QuestionEventArgs.Response vlastnost na hodnotu , true pokud byly změněny některé buňky v aktuálním řádku. To způsobí, CancelRowEdit že k události dojde, když uživatel vrátí úpravy na řádek. Uživatelé můžou vrátit úpravy na řádek dvojím stisknutím klávesy ESC, když je buňka v režimu úprav nebo jednou mimo režim úprav. Tuto událost lze použít k přizpůsobení oboru potvrzení ve virtuálním režimu nastavením QuestionEventArgs.Response vlastnosti na správnou hodnotu v závislosti na zvoleném oboru potvrzení.

Další informace o zpracování událostí najdete v tématu Zpracování a vyvolávání událostí.

Platí pro

Viz také