Determine em que controle o ContextMenuStrip foi usado
eu tenho umContextMenuStrip
que é atribuído a várias caixas de listagem diferentes. Estou tentando descobrir quando oContextMenuStrip
é clicado em queListBox
foi usado. Eu tentei o código abaixo como começo, mas ele não está funcionando. osender
tem o valor correto, mas quando tento atribuí-lo aomenuSubmitted
é nulo.
private void MenuViewDetails_Click(object sender, EventArgs e)
{
ContextMenu menuSubmitted = sender as ContextMenu;
if (menuSubmitted != null)
{
Control sourceControl = menuSubmitted.SourceControl;
}
}
Qualquer ajuda seria ótimo. Obrigado.
Usando a assistência abaixo, eu descobri:
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;
}
}
}