C# 确定鼠标从ToolStripMenuItem中单击哪个PictureBox
我有一些动态创建的C# 确定鼠标从ToolStripMenuItem中单击哪个PictureBox,c#,winforms,C#,Winforms,我有一些动态创建的PictureBox,还有一个名为“删除”的ToolStripMenuItem的ContextMenu。。。我只想删除单击的PictureBox,但此ContextMenu附加到所有PictureBox 怎么做?请解释一下,因为我还是一个初学者。你必须遵循菜单所有者的链条,直到你到达控制点: private void RemoveMenuItem_Click(object sender, EventArgs e) { ToolStripMenuItem ti = sende
PictureBox
,还有一个名为“删除”的ToolStripMenuItem的ContextMenu
。。。我只想删除单击的PictureBox
,但此ContextMenu
附加到所有PictureBox
怎么做?请解释一下,因为我还是一个初学者。你必须遵循菜单所有者的链条,直到你到达控制点:
private void RemoveMenuItem_Click(object sender, EventArgs e) {
ToolStripMenuItem ti = sender as ToolStripMenuItem;
ContextMenuStrip cs = ti.Owner as ContextMenuStrip;
PictureBox pb = cs.SourceControl as PictureBox;
MessageBox.Show(pb.Name); // or pb.Dispose();
}
此代码未执行任何错误检查。在尝试访问其任何属性之前,应该检查这些变量是否为null
科迪·格雷在这里给出了一个全面的答案: