右击鼠标不工作

问题描述:

我处理这两个事件点击鼠标点击和上propertyGridControl但是当我用右键点击任何发生 - 它仅捕捉离开了。右击鼠标不工作

private void propertyGridControl_Click(object sender, EventArgs e) 
    { 
     int i = 0; 
     if (e.Button == System.Windows.Forms.MouseButtons.Right) 
     { 
      MessageBox.Show("right"); 
     } 
    } 

如何捕捉鼠标右键单击?

我已经检查了如何MouseClick事件的作品,并没有看到这个问题。该事件被正确提出。我检查了PropertyGridControl的10.2.5(最新版本)。我只能想象你在网格的编辑器中点击。在这种情况下,鼠标和键盘事件由就地编辑器管理,而不是网格。要赶上这个事件,你可以使用下面的代码:

private void propertyGridControl1_ShownEditor(object sender, EventArgs e) { 
    PropertyGridControl pgc = sender as PropertyGridControl; 
    pgc.ActiveEditor.MouseClick -= new MouseEventHandler(ActiveEditor_MouseClick); 
    pgc.ActiveEditor.MouseClick += new MouseEventHandler(ActiveEditor_MouseClick); 
} 

void ActiveEditor_MouseClick(object sender, MouseEventArgs e) { 
    if(e.Button == System.Windows.Forms.MouseButtons.Right) { 
     MessageBox.Show("right"); 
    }    
} 

我只有一个更多的想法。如果控制的ContextMenuStrip属性设置,如果按下鼠标右键,则不会引发MouseClick事件。是你的情况吗?解决方案很简单 - 处理控件的MouseDown事件。