• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 311
  • Last Modified:

Need Handler for ToolStripMenuItem generated dynamic

I have a ContextMenuStrip that I am creating items for dynamically with info from SQL server

        If objDR.HasRows Then
            While objDR.Read()
                With reportsContextMenuStrip
                   .Items.Add(objDR.Item("ReportName"))
                    AddHandler .Click, AddressOf cMenu_Click

                End With
            End While
        End If
---------------------------------------
    Private Sub cMenu_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim mytext As String
        mytext = DirectCast(sender, ToolStripMenuItem).Text '  <<<<<<<<< Error Here
     
    End Sub

When I click It calls cMenu_Click       {"Unable to cast object of type 'System.Windows.Forms.ContextMenuStrip' to type 'System.Windows.Forms.ToolStripMenuItem'."}

I did try casting  as ContextMenuStrip but had no info to work with.
0
Charles Baldo
Asked:
Charles Baldo
  • 2
1 Solution
 
Robert SchuttSoftware EngineerCommented:
Maybe you can try this, instead of all the AddHandler calls for each item do it once on the parent:
AddHandler reportsContextMenuStrip.ItemClicked, AddressOf cMenu_Click

Open in new window

Then make this your handler:
    Private Sub cMenu_Click(ByVal sender As Object, ByVal e As ToolStripItemClickedEventArgs)
        Dim mytext As String
        mytext = e.ClickedItem.Text
    End Sub

Open in new window

0
 
Charles BaldoSoftware DeveloperAuthor Commented:
Robert,

Thanks I will check it out in a few hours
0
 
Charles BaldoSoftware DeveloperAuthor Commented:
getting the idea
0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now