如题,控件是button,希望左键的时候发生X事件,右键的时候发生y事件,我在MouseClick事件里面写的如下代码        private void btn1_Click(object sender, MouseEventArgs e)
        {
            Button btn = (Button)sender;
            if (e.Button == MouseButtons.Left && e.Clicks == 1)
            {
                btn0009.Image = ilLeftClick.Images[0];
            }
            if (e.Button == MouseButtons.Right && e.Clicks == 1)
            {
                btn0009.Image = liRightClick.Images[1];
            }
        } //按钮事件左键的事情倒是发生了,但是右键的事件就是不响应,这是为什么呢,,求指点个人感觉代码应该对的,但是我在鼠标右键点中那个button的时候button控件并不会像左键点上去会发生一点效果,我感觉似乎button控件没有响应到鼠标右键的事件。。

解决方案 »

  1.   

    大家好,有搞淘宝API开发的朋友没有,合作个软件
      

  2.   

    我觉得是那个判断右键的e.Clicks == 1的问题,你改为2试一下。
      

  3.   


    // 用 MouseUp 代替
    private void button1_MouseUp(object sender, MouseEventArgs e)
    {
        if (e.Button == MouseButtons.Right && 
            button1.ClientRectangle.Contains(e.Location))
        {
            MessageBox.Show("Test");
        }
    }
    // 第二个 Contains 判断 MouseUp 的时候,鼠标是不是在 Button 上面。
      

  4.   


    不要想当然!Try it before asserting.
    亲手去试试就知道了,Button 和 Panel 等其他控件不一样,这一点,它比较特别。