Wie bekomme ich ein Rechtsklick-Mausereignis? Das Ändern von EventArgs zu MouseEventArgs verursacht einen Fehler in Form1Designer?

Ich habe eine Methode zum Erkennen des Linksklick-Ereignisses, das Visual Studio durch Doppelklicken auf das Formular gemacht hat.

 private void pictureBox1_Click(object sender, EventArgs e)
 {
 MessageBox.Show("Left click");
 }

Ich möchte ein Rechtsklick-Ereignis erhalten, indem ich mit der rechten Maustaste auf dasselbe Objekt klicke.

Ich habe online gelesen, dass Sie diesen Schalter verwenden können:

 private void pictureBox1_Click(object sender, EventArgs e)
 {
 if (e.Button == System.Windows.Forms.MouseButtons.Right){MessageBox.Show("Right click");}
 if (e.Button == System.Windows.Forms.MouseButtons.Left){MessageBox.Show("Left click");}
 }

Das Problem ist, dass wenn ich dies tue, e.Button eine rote Linie und einen Fehler hat:

 "'System.EventArgs' does not contain a definition for 'Button'... "

Ich behebe dies, indem ich "EventArgs e" in "MouseEventArgs e" ändere.

In Form1Designer tritt jedoch ein neuer Fehler auf, bei dem die Ereigniszeile wie folgt lautet:

 this.pictureBox1.Click += new System.EventHandler(this.pictureBox1_Click);

Der Fehler sagt:

"No overload for 'pictureBox1_Click' matches delegate 'System.EventHandler' "

Wie behebe ich das? Danke fürs Lesen

Antworten auf die Frage(6)

Ihre Antwort auf die Frage