У меня есть ContextMenuStrip, который присваивается нескольким различным спискам. Я пытаюсь выяснить, когда нажимается ContextMenuStrip то, что ListBox оно было использовано. Я попробовал код ниже, но он не работает. Значение sender имеет правильное значение, но когда я пытаюсь назначить его menuSubmitted, оно равно null.
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;
}
}
}