DataGridView.RowDirtyStateNeeded Gebeurtenis

Definitie

Treedt op wanneer de VirtualMode eigenschap van het DataGridView besturingselement is true en de DataGridView behoeften om te bepalen of de huidige rij niet-doorgevoerde wijzigingen heeft.

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 

Gebeurtenistype

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u deze gebeurtenis kunt afhandelen om een doorvoerbereik op celniveau te bieden, wat betekent dat de gebruiker alleen wijzigingen in de huidige cel kan terugzetten. In het doorvoerbereik op celniveau wordt de rij alleen behandeld als niet-doorgevoerde wijzigingen wanneer de huidige cel niet-doorgevoerde wijzigingen heeft, in plaats van wanneer een cel in de rij niet-doorgevoerde wijzigingen heeft. Dit voorbeeld maakt deel uit van een groter voorbeeld dat beschikbaar is in Walkthrough: Virtuele modus implementeren in het Windows Forms DataGridView-besturingselement.

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

Opmerkingen

Met deze gebeurtenis wordt de QuestionEventArgs.Response eigenschap true standaard ingesteld op als er cellen in de huidige rij zijn gewijzigd. Dit zorgt ervoor dat de CancelRowEdit gebeurtenis optreedt wanneer de gebruiker bewerkingen naar een rij terugdraait. Gebruikers kunnen bewerkingen terugzetten naar een rij door tweemaal op Esc te drukken wanneer een cel zich in de bewerkingsmodus of eenmaal buiten de bewerkingsmodus bevindt. Deze gebeurtenis kan worden gebruikt voor het aanpassen van doorvoerbereik in de virtuele modus door de QuestionEventArgs.Response eigenschap in te stellen op de juiste waarde, afhankelijk van het gekozen doorvoerbereik.

Zie Gebeurtenissen verwerken en genereren voor meer informatie over het afhandelen van gebeurtenissen.

Van toepassing op

Zie ook