Gewusst wie: Ausführen einer benutzerdefinierten Aktion aufgrund von Änderungen in einer Zelle des DataGridView-Steuerelements in Windows Forms
Aktualisiert: November 2007
Das DataGridView-Steuerelement verfügt über eine Reihe von Ereignissen, mit denen Sie Änderungen am Zustand von DataGridView-Zellen erkennen können. Zwei der am häufigsten verwendeten Ereignisse sind das CellValueChanged-Ereignis und das CellStateChanged-Ereignis.
So erkennen Sie Änderungen an den Werten von DataGridView-Zellen
Schreiben Sie einen Handler für das CellValueChanged-Ereignis.
Private Sub dataGridView1_CellValueChanged(ByVal sender As Object, _ ByVal e As DataGridViewCellEventArgs) _ Handles dataGridView1.CellValueChanged Dim msg As String = String.Format( _ "Cell at row {0}, column {1} value changed", _ e.RowIndex, e.ColumnIndex) MessageBox.Show(msg, "Cell Value Changed") End Sub
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { string msg = String.Format( "Cell at row {0}, column {1} value changed", e.RowIndex, e.ColumnIndex); MessageBox.Show(msg, "Cell Value Changed"); }
So erkennen Sie Änderungen an den Zuständen von DataGridView-Zellen
Schreiben Sie einen Handler für das CellStateChanged-Ereignis.
Private Sub dataGridView1_CellStateChanged(ByVal sender As Object, _ ByVal e As DataGridViewCellStateChangedEventArgs) _ Handles dataGridView1.CellStateChanged Dim state As DataGridViewElementStates = e.StateChanged Dim msg As String = String.Format( _ "Row {0}, Column {1}, {2}", _ e.Cell.RowIndex, e.Cell.ColumnIndex, e.StateChanged) MessageBox.Show(msg, "Cell State Changed") End Sub
private void dataGridView1_CellStateChanged(object sender, DataGridViewCellStateChangedEventArgs e) { DataGridViewElementStates state = e.StateChanged; string msg = String.Format("Row {0}, Column {1}, {2}", e.Cell.RowIndex, e.Cell.ColumnIndex, e.StateChanged); MessageBox.Show(msg, "Cell State Changed"); }
Kompilieren des Codes
Dieses Beispiel setzt Folgendes voraus:
Ein DataGridView-Steuerelement mit dem NamendataGridView1 muss vorhanden sein. Für C# müssen die Ereignishandler mit den entsprechenden Ereignissen verbunden werden.
Verweise auf die System-Assembly und die System.Windows.Forms-Assembly.
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Validieren von Daten im DataGridView-Steuerelement in Windows Forms
Referenz
Weitere Ressourcen
Programmieren mit Zellen, Zeilen und Spalten im DataGridView-Steuerelement in Windows Forms