2016-03-28 10 views
0

Ich habe ein WindowsForm mit mehreren ComboBoxen und zugeordneten TextBoxen. Wenn der Benutzer eine ComboBox ändert, möchte ich etwas Text in die zugehörige TextBox einfügen. Ich möchte den Code für alle ComboBoxen wiederverwenden, so dass ich nicht 9 Kopien desselben Codes haben muss.Ereignis, das auf mehreren Elementen wirkt, bestimmt, welches Element das Ereignis ausgelöst hat

Wie kann ich feststellen, welche ComboBox den Event ausgelöst hat?

+4

Der Parameter 'sender' eines Ereignisses sollte das auslösende Steuerelement sein. Sie müssen es nur in den entsprechenden Steuerelementtyp umwandeln. –

Antwort

0
public void MyCheckbox_Event(object sender, EventArgs e){ 
    var chk = sender as CheckBox; 
    if(chk == null) return; 
    string name = chk.Name; 
    switch(name){ 
     case "name1": 
     //do something for name 1 
     break; 
     case "name2": 
     //do something for name 2 
     break; 
     //and so on and so forth 
    } 

} 
+0

Vielen Dank das wirklich geholfen :) – Findas

+0

Sie sind herzlich willkommen. Fühlen Sie sich frei, meine Antwort zu bewerten und als korrekt zu markieren, wenn dies Ihr Problem löst. – Jace

+0

Ich habe ein Problem: var chk = sender as CheckBox;
if(chk == null) return;

Dies ist nicht Naht zu arbeiten die var ist alwa null – Findas

Verwandte Themen