Код для добавления пунктов меню и подпунктов из хранимой процедуры SQL - PullRequest
0 голосов
/ 01 июня 2019

Мне нужен код Vb.net для динамического добавления элементов и подпунктов меню из базы данных SQL, и как я могу написать код события щелчка для каждого меню, которое я не знаю, как его имя перед загрузкой из базы данных?

1 Ответ

0 голосов
/ 02 июня 2019

спасибо, я обработал это, используя следующий код:

Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load


    ' Dim MenuStrip1 As New MenuStrip
    Dim oMenu1 As New ToolStripMenuItem

    With MenuStrip1.Items.Add("Set As Next Track")
        .Tag = 1
        ' AddHandler .Click, AddressOf lvTracksContextMenu_Click
    End With

    With MenuStrip1.Items.Add("&Loop Track")
        .Tag = 2
        AddHandler .Click, AddressOf lvTracksContextMenu_Click
    End With


    With oMenu1
        oMenu1.Name = "QuickQueue SubMenu"
        oMenu1.Text = "QuickQueue"
        AddHandler .Click, AddressOf lvTracksContextMenu_Click

        With .DropDownItems.Add("Item 1")
            .Tag = 101
            AddHandler .Click, AddressOf lvTracksContextMenu_Click
        End With
        With .DropDownItems.Add("Item 2")
            .Tag = 102
            AddHandler .Click, AddressOf lvTracksContextMenu_Click
        End With
        With .DropDownItems.Add("Item 3")
            .Tag = 103
            AddHandler .Click, AddressOf lvTracksContextMenu_Click
        End With
    End With
    MenuStrip1.Items.Add(oMenu1)

    'oLVTracksMenu.Show(New System.Drawing.Point(e.X + Me.Left, e.Y + Me.Top))

End Sub

Sub lvTracksContextMenu_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    MessageBox.Show(CType(sender, ToolStripItem).Tag)
End Sub

Конечный класс

...