问题
I have a toolstrip with a context menu and a toolstrip button in it with a click event. Initially I tried to assign the context menu to the button itself, but couldn't find a context menu in its property. So I assigned the context menu to the toolstrip. Now whenever I right click the button for the context menu to appear, the button click event is triggered. I want to check which mouse button is clicked, so I tired to cast event args to mouseeventargs:
if (((MouseEventArgs)e).Button != MouseButtons.Left) return;
but I got an exception that I can't do this cast. Can I either assign context menu to the button or detect which mouse button is clicked? Thanks
回答1:
You can try the MouseDown
event of the ToolStripButton
like this:
private void toolStripButton1_MouseDown(object sender, MouseEventArgs e){
if(e.Button == MouseButtons.Right){
//...
}
}
来源:https://stackoverflow.com/questions/19544505/detect-right-click-on-toolstrip-button