我觉得是MessageBox.Show的原因,别用MessageBox
因为一旦MessageBox出现了,焦点就离开button了,关闭MessageBox后,焦点又回到button,这样就无限循环触发了

解决方案 »

  1.   

    MessageBox.Show("mouse enter");转移了焦点。不要转移焦点,就不会多次激发。
      

  2.   

    messagebox是模式对话框,它弹出的时候,你整个窗体都失去了焦点,而不仅仅是button
    所以你鼠标已经在另一个窗体里了
      

  3.   

    不用show 而是用 textbox 接收这些信息,看看有没有这问题嘛~
      

  4.   

    很明显啊。
    MessageBox.Show("mouse enter");
    执行后,原窗体失去焦点,这时候你啥也不动,自然没事,当你按下回车的时候,原窗体获得焦点,相当于鼠标再次enter了一次。
    所以又继续触发。