ich habe ein Array aus Comboboxen erstellt. Jetzt möchte ich natürlich auch das Ereignis SelectedIndexChanged zu jedem Element der im Array enthaltenen Comboboxen auswerten.
Wie genau funktioniert das? Brauche ich jetzt auch ein Array aus Ereignisbehandlungsmethoden (hab ich probiert)?
Oder ist es möglich, eine Methode zu erstellen, bei der dann nur der Index übergeben wird?
Bei Änderung einer der Comboboxen im Array Kurve_Extruder[] wird in die Ereignisbehandlungsmethode "Kurve_Extruder_SelectedIndexChanged(object sender, EventArgs e)" s.u. gesprungen, doch woher weiß ich jetzt, welches Array-Element das Ereignis ausgelöst hat?
Die eine Zeile in der Methode erzeugt übrigens eine NullReferenceException...
Hier mal der Code...
public Form1()
{
InitializeComponent();
ComboBox[] Kurve_Extruder = new ComboBox[8];
ComboBox[] Kurve_Parameter = new ComboBox[8];
ComboBox[] Kurve_Soll_Ist = new ComboBox[8];
ComboBox[] Kurve_Element = new ComboBox[8];
for (int i = 0; i < 8; i++)
{
Kurve_Extruder[i] = new ComboBox();
Kurve_Parameter[i] = new ComboBox();
Kurve_Soll_Ist[i] = new ComboBox();
Kurve_Element[i] = new ComboBox();
Kurve_Extruder[i].Location = new Point(85, 244 + i * 28);
Kurve_Parameter[i].Location = new Point(222, 244 + i * 28);
Kurve_Soll_Ist[i].Location = new Point(367, 244 + i * 28);
Kurve_Element[i].Location = new Point(504, 244 + i * 28);
Controls.Add(Kurve_Extruder[i]);
Controls.Add(Kurve_Parameter[i]);
Controls.Add(Kurve_Soll_Ist[i]);
Controls.Add(Kurve_Element[i]);
string[] Liste = new string[] {"Bitte wählen...", "Extruder K90", "Extruder K70", "Extruder K35", "Glättwalzen", "Ereignisse", "Dosierung"};
Kurve_Extruder[i].Items.AddRange(Liste);
Kurve_Extruder[i].Text = "Bitte wählen...";
Kurve_Extruder[i].SelectedIndexChanged += new System.EventHandler(Kurve_Extruder_SelectedIndexChanged);
}
}
private void Kurve_Extruder_SelectedIndexChanged(object sender, EventArgs e)
{
label1.Text = Kurve_Extruder.SelectedItem.ToString();
}
Gruß Heiko