cubic83
Goto Top

c Sharp - Einem Button ein Event zuweisen

Hallo,

Ich erzeuge zur Laufzeit ein Formular auf welches ich einen Button setzen möchte. Bei drücken des Buttons soll das Formular geschlossen werden. Ich kriegs aber nicht hin. Auch mit den Beispielen aus dem Netz komme ich nicht weiter. Weiss jemand Rat?

Das ist mein Code bislang:

private void CloseForm(object sender, EventArgs e)
{
    // ????????
}

private void myMethod() 
{
  
  Form myform = new Form();

  Button myButton = new Button();
  myButton.Click += new System.EventHandler(CloseForm);   
    
  myForm.Controls.Add(myButton);
}

Wie kann ich der Methode CloseForm denn jetzt mein Formular (myform) übergen?

Danke,

mfG

Content-Key: 117262

Url: https://administrator.de/contentid/117262

Printed on: April 25, 2024 at 14:04 o'clock

Mitglied: 14695
14695 Jun 02, 2009 at 12:52:06 (UTC)
Goto Top
Hi,

du musst aus dem Objekt "sender" das Formular heraus"boxen", meint: Das Objekt zunächst in einen Button umwandeln und dann das Formular aus der Eigenschaft "Parent" herauslesen:

Button b = (Button)sender; // Dann hast du den Knopf
Form f = (Form)b.Parent; // Dann hast du das Formular

f.Close();

oder kurz:

((Form)((Button)sender).Parent).Close();

Grüße aus Köln
OLI
Member: Cubic83
Cubic83 Jun 02, 2009 at 14:29:16 (UTC)
Goto Top
Das klappt.

Hab vielen Dank!!!