DataGridView.CellMouseClick Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt ein, wenn mit der Maus an beliebiger Stelle einer Zelle geklickt wird.
public:
event System::Windows::Forms::DataGridViewCellMouseEventHandler ^ CellMouseClick;
public event System.Windows.Forms.DataGridViewCellMouseEventHandler CellMouseClick;
public event System.Windows.Forms.DataGridViewCellMouseEventHandler? CellMouseClick;
member this.CellMouseClick : System.Windows.Forms.DataGridViewCellMouseEventHandler
Public Custom Event CellMouseClick As DataGridViewCellMouseEventHandler
Ereignistyp
Beispiele
Im folgenden Codebeispiel wird die Verwendung dieses Members veranschaulicht. Im Beispiel meldet ein Ereignishandler das Auftreten des Ereignisses CellMouseClick . Dieser Bericht hilft Ihnen, zu erfahren, wann das Ereignis eintritt, und kann Sie beim Debuggen unterstützen. Um über mehrere Ereignisse oder ereignisse zu berichten, die häufig auftreten, sollten Sie die Nachricht durch Console.WriteLine ein mehrlineiges TextBoxersetzen MessageBox.Show oder anfügen.
Um den Beispielcode auszuführen, fügen Sie ihn in ein Projekt ein, das eine instance des Typs DataGridView enthältDataGridView1
. Stellen Sie dann sicher, dass der Ereignishandler dem CellMouseClick Ereignis zugeordnet ist.
private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e) {
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "ColumnIndex", e.ColumnIndex );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "RowIndex", e.RowIndex );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Button", e.Button );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Clicks", e.Clicks );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "X", e.X );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Y", e.Y );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Delta", e.Delta );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Location", e.Location );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "CellMouseClick Event" );
}
Private Sub DataGridView1_CellMouseClick(sender as Object, e as DataGridViewCellMouseEventArgs) _
Handles DataGridView1.CellMouseClick
Dim messageBoxVB as New System.Text.StringBuilder()
messageBoxVB.AppendFormat("{0} = {1}", "ColumnIndex", e.ColumnIndex)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "RowIndex", e.RowIndex)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Button", e.Button)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Clicks", e.Clicks)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "X", e.X)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Y", e.Y)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Delta", e.Delta)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Location", e.Location)
messageBoxVB.AppendLine()
MessageBox.Show(messageBoxVB.ToString(),"CellMouseClick Event")
End Sub
Hinweise
Dieses Ereignis tritt auf, wenn der Benutzer mit einer der Maustasten klickt. Verwenden Sie die MouseEventArgs.Button -Eigenschaft, um zu bestimmen, auf welche Schaltfläche geklickt wurde.
Verwenden Sie das CellContentClick -Ereignis, um Klicks auf den Inhalt einer Zelle zu erkennen, z. B. eine Schaltfläche oder einen Link in einer Zelle.
Der Handler für dieses Ereignis empfängt den Spaltenindex und zeilenindex der Mauszeigerposition.
Bei Klicks in einem DataGridViewCheckBoxCelltritt dieses Ereignis auf, bevor das Kontrollkästchen den Wert ändert. Wenn Sie also den erwarteten Wert nicht basierend auf dem aktuellen Wert berechnen möchten, behandeln Sie das Ereignis in der CellValueChanged Regel stattdessen. Da dieses Ereignis nur auftritt, wenn der vom Benutzer angegebene Wert committet wird, was in der Regel auftritt, wenn der Fokus die Zelle verlässt, müssen Sie auch das CurrentCellDirtyStateChanged Ereignis behandeln. Wenn es sich bei der aktuellen Zelle um eine Kontrollkästchenzelle handelt, rufen Sie in diesem Handler die CommitEdit -Methode auf, und übergeben Sie den Commit Wert.
Weitere Informationen zum Behandeln von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.