C#: Wie kann ich abfragen, ob ein Button geklickt wurde und dann eine MessageBox erscheinen lassen?
Hallo liebes Forum,
ich hoffe, ich bin hier richtig und ihr könnt mir helfen.
Ich habe mit diesem Code auf einer Form einen Button erstellt. Wie kann ich diesen abfragen, also ob er geklickt wurde? Also sowas, wie das hier:
private void button1_Click(object sender, EventArgs e)
und dann z.B. eine MessageBox erscheinen lassen?
Vielen Dank dafür im Voraus!
private void Form1_Load(object sender, EventArgs e)
{
Button cb_button1 = new Button();
Controls.Add(cb_button1);
cb_button1.Location = new Point(200, 100);
cb_button1.Width = 150;
cb_button1.Height = 20;
cb_button1.Text = "OK";
cb_button1.Name = "cb_button2";
}
2 Antworten
Hallo,
das Click und weitere Events eines Buttons kannst du genauso hinzufügen, wie du bereits die Eigentschaften und co. gesetzt hast.
Für das "Click" Event fügst du noch folgendes hinzu:
cb_button1.Click += Cb_button1_Click;
"Cb_button1_Click" ist der Name der Methode welche beim ClickEvent aufgerufen werden soll. In Visual Studio wird dir diese i.d.R. automatisch generiert.
Die Methode sieht dann wie folgt aus:
private void Cb_button1_Click(object sender, EventArgs e)
{
//Code here
}
Dort kannst du nun (d)eine MessageBox anzeigen lassen, das geht wie folgt:
MessageBox.Show("Clicked");
Ich hoffe ich konnte dir helfen! Viel Spaß beim programmieren :)
Mit freundlichen Grüßen
//Code fuer eine MessageBox
string message = "Simple MessageBox";
string title = "Title";
MessageBox.Show(message, title);
Sowas hier?
Button button = new Button();
button.Click += (s,e) => {
string message = "Simple MessageBox";
string title = "Title";
MessageBox.Show(message, title);
};
container.Controls.Add(button);
Ich hatte ganz vergessen zu erwähnen, dass man nicht zwingend eine Click Methode erstellen muss sondern es auch direkt dort machen kann.
Jedoch empfiehlt es sich mit einer seperaten Click Methode eher als z.B. in der FormLoad Methode zu machen. Jedoch nur wegen der Übersicht... :)
Ja ich dachte so kurz wie der Code ist geht auch eine arrow function. Aber du hast recht, und für Anfänger ist eine Click Funktion auch zu empfehlen.
Danke.Aber wie Frage ich das klick Ereignis meines selbst zur Laufzeit erstellten Button ab? Also wie schreibe ich diese Zeile?: private void button1_Click(object sender, EventArgs e)
Danke