Entwickler-Ecke

C# - Die Sprache - Auf Sender Eigenschaften zugreifen


shinkan90 - Mi 15.09.10 21:41
Titel: Auf Sender Eigenschaften zugreifen
Hallo miteinander^^


Hier erstmal mein Problem:

Ich haben einen Button der auf das Click-Ereignis ein Ereignis auslöst, um ein weiters Object zu erzeugen. Ich möchte dabei gerne die Koordinaten des Buttons mit übermitteln. Meine 1. Idee wäre war es mit einer zusätzlichen Varbiable im Ereignishandler. Dann kam mir der Gedanke, ob es nicht vielleicht auch möglich ist auf die Eigenschaften des Senderobjects in Ereinishandler zuzugreifen.

Ist das irgendwie möglich?

Also mal so grob in Quelltext:


C#-Quelltext
1:
2:
3:
4:
5:
public void EreignishandlerXYZ(Object sender,
                           EventArgs e)
{
sender.location = new PointXY;
}


Ralf Jansen - Mi 15.09.10 21:56

Na klar. Du musst aber erst sender auf den konkreten Typen casten der die von dir gewünschte Property auch hat.
Wenn du wirklich nur Location willst reicht es auf Control zu casten (Control definiert die Location Property auf Button casten ginge aber natürlich genauso).



C#-Quelltext
1:
2:
3:
4:
5:
6:
public void EreignishandlerXYZ(Object sender, EventArgs e)
{
   Control control = sender as Control;
   if(control != null)
      control.location = new PointXY;
}