1、contextmenustrip:上下文菜单(鼠标右键菜单)
2、menustrip:普通(窗体)菜单
3、statusStrip状态栏(底部)
4、toolStrip工具栏,可导入ico图标
简单来说,就是版本不同,只不过是升级后建议功能更加强大的ContextMenuStrip罢了,升级后的元件功能更强 。
ContextMenu是VS2005里的,而ContextMenuStrip是VS2008以后的版本里面的。
ContextMenuStrip 替换 ContextMenu,
【1】可以将 ContextMenuStrip 与任何控件关联,单击鼠标右键会自动显示快捷菜单。
【2】可以通过使用 Show 方法以编程方式显示 ContextMenuStrip。
【3】ContextMenuStrip 支持可取消的 Opening 和 Closing 事件以处理动态填充和多次单击方案。
【4】ContextMenuStrip 支持图像、菜单项复选状态、文本、访问键、快捷键和级联菜单。
尽管 ContextMenuStrip 对以前版本的 ContextMenu 控件的功能进行了替换和添加,但考虑到向后兼容性和将来的使用(如果的确需要),仍然保留了 ContextMenu。
建议采用ContextMenuStrip
菜单开发
Private Sub LVLine_MouseClick(sender As Object, e As MouseEventArgs) Handles LVLine.MouseClick
If e.Button = MouseButtons.Right Then
'Me.ContextMenuStrip1.Show(Me, PointToClient(Cursor.Position))
'动态菜单
Dim cms As ContextMenuStrip = New ContextMenuStrip()
Dim i As Integer
For i = 1 To 3
Dim tsm As ToolStripMenuItem = New ToolStripMenuItem(i.ToString())
Dim j As Integer
For j = 1 To 2
Dim tsmz As ToolStripMenuItem = New ToolStripMenuItem(j.ToString())
tsmz.Name = i & "," & j
tsm.DropDownItems.Add(tsmz)
AddHandler tsmz.Click, AddressOf Me.cms_Click '绑定事件
Next
cms.Items.Add(tsm)
Next
Me.LVLine.ContextMenuStrip = cms '这样就能直接绑定右键菜单,点击鼠标右键就能直接打开
End If
End Sub
调用菜单
单纯通过右键的方式打开已经存在的菜单控件
Private Sub LVLine_MouseClick(sender As Object, e As MouseEventArgs) Handles LVLine.MouseClick
If e.Button = MouseButtons.Right Then
'Me.ContextMenuStrip1.Show(Me, PointToClient(Cursor.Position))
End If
End Sub