我有一个包含一些选项的contextmenustrip,我几乎实现了所有内容,我只想检查我在options_MouseClick中选择了哪些项目
private void ConsoleRichTextBox_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
options.Show();
Point currentPoint;
currentPoint = new Point(e.X, e.Y);
options.Show(ConsoleRichTextBox, currentPoint);
}
}
private void options_MouseClick(object sender, MouseEventArgs e)
{
//if options selected = clear
ConsoleRichTextBox.Clear();
}
答案 0 :(得分:1)
您应该只处理每个菜单项的Click事件。无需处理contextmenustrip的MouseClick事件。您还可以为同一方法添加多个处理程序,并使用sender参数进行区分,因为这将引用所单击的确切菜单项。
ToolStripMenuItem tsmi = new ToolStripMenuItem();
tsmi.Click += tsmi_Click;
和
public void tsmi_Click(object sender, EventArgs e)
{
if (sender == tsmi)
{
// Do stuff
}
}