DataGridView.RowDirtyStateNeeded Événement

Définition

Se produit lorsque la propriété VirtualMode du contrôle DataGridView est true et que le DataGridView doit déterminer si la ligne active comporte des modifications non validées.

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 

Type d'événement

QuestionEventHandler

Exemples

L’exemple de code suivant montre comment gérer cet événement pour fournir une portée de validation au niveau de la cellule, ce qui signifie que l’utilisateur peut annuler les modifications apportées à la cellule active uniquement. Dans la portée de validation au niveau de la cellule, la ligne est traitée comme ayant des modifications non validées uniquement lorsque la cellule active comporte des modifications non validées, plutôt que lorsqu’une cellule de la ligne contient des modifications non validées. cet exemple fait partie d’un exemple plus complet disponible dans procédure pas à pas : implémentation du Mode virtuel dans le contrôle DataGridView Windows Forms.

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

Remarques

Par défaut, cet événement affecte à la propriété la valeur QuestionEventArgs.Response true si des cellules de la ligne actuelle ont été modifiées. L' CancelRowEdit événement se produit alors lorsque l’utilisateur annule les modifications apportées à une ligne. Les utilisateurs peuvent annuler les modifications apportées à une ligne en appuyant deux fois sur ÉCHAP lorsqu’une cellule est en mode édition ou une fois en dehors du mode édition. Cet événement peut être utilisé pour la personnalisation de la portée de validation en mode virtuel en affectant QuestionEventArgs.Response à la propriété la valeur correcte en fonction de la portée de validation choisie.

Pour plus d’informations sur la façon de gérer les événements, consultez gestion et déclenchement d’événements.

S’applique à

Voir aussi