C# MenuStrip dynamisch füllen
lima-city → Forum → Programmiersprachen → Programmieren mit .NET & Mono
anonymen methode
anzahl
ausprobieren
beschreiben
code
dank
element
erstellen
erzeugen
geschrieben code
item
list
schleife
sender
string
tag
versuchen
-
Hallo Community,
seit einigen Tagen versuche ich ein MenuStrip dynamisch zu füllen.
Dazu habe ich die ganzen Titel des MenuStrips in einer StringCollection und möchte aus diesen ToolStripMenuItems erzeugen. Ich habe mir das so gedacht: Da die Anzahl der Elemente variiert, erstelle ich eine List<> mit den Items. Für jedes Element der StringCollection möchte ich nun ein Item erstellen, diesem den Namen des Strings zuweisen und mit einer Anonymen Methode (delegate(){}-Schlüsselwort) ein Event hinzufügen.
Sollte etwas schwer verständlich sein, bitte einfach zurückschreiben.
Danke schon mal im Voraus.
MfG
Mator -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Was hast du denn schon ausprobiert, dass es nicht geht? Ansonsten hätte ich selber das so geschrieben:
Du kannst dann in einer weiteren `foreach` Schleife die `List<ToolStripMenuItem>` durchgehen und alle Elemente deiner `MenuStrip.Items` hinzufügen.public List<ToolStripMenuItem> GetToolStripMenuItems(StringCollection titles) { List<ToolStripMenuItem> list = new List<ToolStripMenuItem>(); foreach (string title in titles) { ToolStripMenuItem item = new ToolStripMenuItem(title); item.Click += delegate(object sender, EventArgs e) { // Todo: Click event }; list.Add(item); } return list; }
Ryan -
Ah danke, hatte es schon gelöst, aber viel komplizierter (will ich hier nicht beschreiben). Das man eine List so initialisieren kann war mir völlig unbekannt. Werde es gleich ausprobieren.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage