Dynamischen MenuItems Click Event hinzufügen

PhoenixDH

Erfahrenes Mitglied
Guten Morgen zusammen,

ich erstelle in einer Windows Forms dynamisch aus einer XML Datei ein Menü das folgende Struktur hat:
Open
- App1
- App2
- App3

Jetzt will ich jedem der Subitems dynamisch ein Click Event hinzufügen das erstmal den Namen des Eintrags ausgibt.
Leider scheitere ich daran, ich schaffe es zwar das ClickEvent auszulösen, aber es wird dann immer eine Mesagebox ausgegeben so oft wie das Menü Einträge hat.

Hier mal der Code:
Code:
    Private Sub get_links(ByVal source As Integer)
        On Error Resume Next

        Dim MenueItem() As ToolStripMenuItem = {ÖffnenToolStripMenuItem, RemoveShortcutToolStripMenuItem}
        ReDim Preserve MenueItem(1)

        MenueItem(source).DropDown.Items.Clear()

        Dim doc As New XmlDocument
        doc.Load(My.Application.Info.DirectoryPath & "\" & My.Application.Info.ProductName & "_Settings.xml")
        Dim xnlIds As XmlNodeList = doc.SelectNodes("/application/app")
        Dim xnId As XmlNode
        For Each xnId In xnlIds
            If source = 0 Then
                AddHandler MenueItem(source).DropDown.Click, AddressOf open_click
            ElseIf source = 1 Then
                AddHandler MenueItem(source).DropDown.Click, AddressOf remove_click
            End If
            MenueItem(source).DropDown.Items.Add(xnId.ChildNodes.Item(0).InnerText)
        Next

        For i = 0 To MenueItem(source).DropDownItems.Count - 1
            MenueItem(source).DropDownItems(i).Image = My.Resources.shell32_35
        Next
    End Sub

Und die Ausgabe:
Code:
    Private Sub open_click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MsgBox(sender.ToString)
    End Sub

Was mache ich hier flasch, danke!
 
Zurück