女士们先生们,你好!
我有一个 MenuStrip
并且想要一个结构相同的 ContextMenu
。 我可以使用我的 MenuStrip
作为 ContextMenu
吗?或者可以从 MenuStrip
快速创建带有数据源的 ContextMenu
吗?
谢谢!
女士们先生们,你好!
我有一个 MenuStrip
并且想要一个结构相同的 ContextMenu
。 我可以使用我的 MenuStrip
作为 ContextMenu
吗?或者可以从 MenuStrip
快速创建带有数据源的 ContextMenu
吗?
谢谢!
我不相信您可以将MenuStrip
的项目用作ContextMenuStrip
。我以前遇到过这种情况,我同意菜单应该是菜单,但它们显然被实现为不同的控件,因为在底层它们需要稍微不同的功能。
然而,您可以使用ContextMenuStrip
作为MenuStrip
控件的下拉菜单。因此,您可以通过反其道而行之来实现您要查找的行为。设计ContextMenuStrip
以任何您想要的方式,然后将其分配给您希望显示该菜单的MenuStrip
上的顶级ToolStripMenuItem
的DropDown
属性。
或者,您可以走捷径,在设计器中创建两个不同的菜单,但将一个菜单中的项目复制并粘贴到另一个菜单中。这至少节省了您设计两个完全相同菜单的时间。您甚至可以将事件处理程序(例如,对于每个菜单项的Click
事件)连接起来,以处理来自两个菜单的项目。例如,在VB.NET中,Handles
关键字使此非常简单:
Private Sub Exit_Click(ByVal sender As Object, ByVal e As EventArgs) _
Handles exitMenuItem.Click, exitContextMenuItem.Click
Me.Close()
End Sub
如果你想要一个简短明了的答案:不。