Hallo,
ich bin realtiv neu in C# unterwegs und beiss mir gerade die Zähne aus.
Ich habe ein Menu Strip, der 3 im Designer erstellte Unterpunkte hat
Kategorie
->Hardware
->Software
->Sonstiges
Ich möchte zur Laufzeit neue Punkte unter Hardware Software usw einfügen also:
Hardware
->punkt1
und so weiter
Unter Hardware lege ich mittels
hardwareToolStripMenuItem.DropDownItems.Add(hKatItem);
ein neues Item an, funktioniert auch wunderbar.
Jetzt will ich allerdings unter diesem Item nochmal Items einfügen.
Wie mach ich das jetzt? Ich habe keine Möglichkeit gefunden das ganze per Index oder so anzusprechen.
Mittels hardwareToolStripMenuItem lege ich ja Items unter "Hardware" an, ich will aber Items unter den dynamisch erstellten Unterpunkten von Hardware anlegen.
Ist bestimmt kein großes Thema für nen Crack aber ich bin nicht fündig geworden.
Mfg Attix22
Hallo Attix22,
da kannst du dir ganz leicht selbst abhelfen — schau dir mal den vom Designer für "Hardware" generierten Code an!
m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
Danke für die schnelle Nachricht,
ich hab mir das im Designer Code angeschaut, allerdings werd ich nicht ganz schlau daraus.
Für Hardware steht hier:
this.hardwareToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
allerdings kann ich das nicht für mich anwenden, wenn ich in Form.cs
this.unterpunktToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
schreibe (mit und ohne this.) bekomme ich Fehler.
"TicketKaetegorien.Form1" enthält keine Definition für "unterpunktToolStripMenuItem", und es konnte keine Erweiterungsmethode "unterpunktToolStripMenuItem" gefunden werden, die ein erstes Argument vom Typ "TicketKaetegorien.Form1" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Dokumente und Einstellungen\User\Eigene Dateien\Visual Studio 2008\Projects\TicketKaetegorien\TicketKaetegorien\Form1.cs 81 18 TicketKaetegorien
Hallo Attix22,
bitte beachte vorsorglich [Hinweis] Wie poste ich richtig? Punkt 1.1.1, das sind absolute Grundlagen.
Wenn du die Variable hardwareToolStripMenuItem
selbst definierst, musst du bei der Deklaration den Datentyp angeben:
System.Windows.Forms.ToolStripMenuItem unterpunktToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
Schöner finde ich allerdings die Verwendung von using
-Direktiven:
using System.Windows.Forms;
Bei der Zuweisung, beispielsweise im Konstruktor der Klasse, reicht dann folgendes:
ToolStripMenuItem unterpunktToolStripMenuItem = new ToolStripMenuItem();
m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
Vielen Dank für die Antwort, die USING Direktive habe ich bereits genutzt deshalb hat mich die Fehlermeldung gewundert.
Der von dir angegebene Code funktioniert, zumindestens gibt es keine Fehler, allerdings wird das erstellte Element nicht angezeigt.
Ich werd weiter dran tüfteln.
Gruß,
"Der-keine-AnfängerFragen-mehr-stellende-Attix22"