Meintest du nicht Wert von Item?
Von welcher Methode soll der Name denn sonst sein? Oder gibt es für jeden Wert eine extra Methode, die entsprechend ausgeführt wird?
Nun, ist ja eigentlich auch egal, denn soweit ich weiß, ist das nicht möglich.
Wenn du aber unbedingt eine Form an einen bestimmten Namen knüpfen willst, kannst du doch ein Dictionary<string, Form> global in der Klasse fest legen.
Dort fügst du dann den Namen der Form, den sie haben soll, als Key ein und Value ist dann die Form, die so heißen soll.
Über den Indexer kannst du dann ganz einfach darauf zugreifen, also z.B. so:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| public partial class Form1 : Form { private Dictionary<string, Form> Fenster = new Dictionary<string, Form>();
public Form1() { InitializeComponent(); }
private void Item_Click(object sender, EventArgs e) { switch ((string)((ComboBox)sender).SelectedItem) { case "MethodenName": Fenster.Add("Methode_MethdenName", new Form2()); Fenster["Methode_MethdenName"].ShowDialog(); break; default: break; } }
private void ChangeText(string Item,string newText) { Fenster["Methode_MethdenName"].Text = newText; }
private void MethodenName() { } } |