我有一个ContextMenuStrip
分配给几个不同的列表框。我试图弄清楚什么时候ContextMenuStrip
点击了ListBox
它的用途。我尝试了下面的代码作为开始,但它不起作用。具有正确的sender
值,但是当我尝试将其分配给它时,menuSubmitted
它为空。
private void MenuViewDetails_Click(object sender, EventArgs e)
{
ContextMenu menuSubmitted = sender as ContextMenu;
if (menuSubmitted != null)
{
Control sourceControl = menuSubmitted.SourceControl;
}
}
任何帮助都会很棒。谢谢。
使用下面的帮助,我想通了:
private void MenuViewDetails_Click(object sender, EventArgs e)
{
ToolStripMenuItem menuItem = sender as ToolStripMenuItem;
if (menuItem != null)
{
ContextMenuStrip calendarMenu = menuItem.Owner as ContextMenuStrip;
if (calendarMenu != null)
{
Control controlSelected = calendarMenu.SourceControl;
}
}
}