Hallo Leute,
ich komme echt nicht weiter.
Ich habe einen String, den ich splitten und daraus ein Kontextmenü erstellen möchte. Dabei gibt es nur ein Hauptmenü und ggf. dazu Untermenüs.
Leider wird bei mir aber immer nur leere Menü-Items erstellt und im letzten werden dann alle Untermenüs eingefügt.
Kann mir einer vielleicht helfen, wo hier mein Gedankenfehler ist?
Hier mein bisheriger Ansatz:
Vielen Dank im Voraus.
Gruß Achilleus
ich komme echt nicht weiter.

Ich habe einen String, den ich splitten und daraus ein Kontextmenü erstellen möchte. Dabei gibt es nur ein Hauptmenü und ggf. dazu Untermenüs.
Quellcode
-
- dim s as String="ESt.-Berechnung|ESt.-Berechnung EM|ESt.-Berechnung EF;ESt.-Sendeprotokoll|ESt.-Sendeprotokoll EM|ESt.-Sendeprotokoll EF;ESt.-Formulare|ESt-Formulare EM|ESt.-Forumlare EF"
- Daraus soll jetzt folgendes Kontextmenü erstellt werden.
- ESt.-Berechnung
- - ESt.-Berechnung EM
- - ESt.-Berechnung EF
- ESt.-Sendeprotokoll
- - ESt. Sendeprotokoll EM
- - ESt.-Sendeprotokoll EF
- ESt.-Formulare
- - ESt.-Formulare EM
- - ESt.-Formulare EF
Leider wird bei mir aber immer nur leere Menü-Items erstellt und im letzten werden dann alle Untermenüs eingefügt.
Kann mir einer vielleicht helfen, wo hier mein Gedankenfehler ist?
Hier mein bisheriger Ansatz:
VB.NET-Quellcode
-
- Private Sub KryptonDropButton_DropDown(sender As Object, e As ContextPositionMenuArgs)
- 10: Dim btn As New KryptonDropButton
- 20: btn = CType(sender, KryptonDropButton)
- 30: Dim _FileProperty As FileProperty
- 40: Dim mnuitem As ToolStripItem
- 50: Dim mnuSubItem As New ToolStripMenuItem
- 60: _FileProperty = DirectCast(btn.Tag, FileProperty)
- 70: Dim t() As String = _FileProperty.Contextmenue.Split(";"c)
- 80: ContextMenuStripKrypton.Items.Clear()
- 90: For i As Integer = 0 To t.Count - 1
- 100: Dim c() As String = t(i).Split("|"c)
- 110: If c(0).ToString = "---" Then
- 120: ContextMenuStripKrypton.Items.Add(New ToolStripSeparator)
- 130: Else
- 140: If c.Length <= 1 Then
- 150: mnuitem = ContextMenuStripKrypton.Items.Add(c(0).ToString, ImlProfile.Images(0))
- 160: mnuitem.Tag = _FileProperty
- 170: AddHandler(mnuitem.Click), AddressOf ToolStripMenuItem_Click
- 180: Else
- mnuitem = ContextMenuStripKrypton.Items.Add("")
- 200: mnuSubItem.Text = c(0)
- mnuSubItem.Image = ImlProfile.Images(0)
- 210: mnuSubItem.Tag = _FileProperty
- 220: AddHandler(mnuSubItem.Click), AddressOf ToolStripMenuItem_Click
- 190: For q = 1 To c.Length - 1
- 230: If c(q).ToString = "---" Then
- 240: mnuSubItem.DropDownItems.Add(New ToolStripSeparator)
- 250: ContextMenuStripKrypton.Items.Add(mnuSubItem)
- 260: Else
- 270: mnuSubItem.DropDownItems.Add(c(q), ImlProfile.Images(0))
- 290: ContextMenuStripKrypton.Items.Add(mnuSubItem)
- mnuSubItem.DropDownItems(mnuSubItem.DropDownItems.Count - 1).Tag = _FileProperty
- AddHandler mnuSubItem.DropDownItems(mnuSubItem.DropDownItems.Count - 1).Click, AddressOf ToolStripMenuItem_Click
- 300: End If
- 310: Next
- 320: End If
- 330: End If
- 340: Next
- End Sub
Vielen Dank im Voraus.
Gruß Achilleus