2014-10-31 121 views
0

我創建了一個用戶控件,它應該像Windows窗體應用程序中的按鈕一樣。用戶控件按鈕單擊不按預期方式工作

它看起來像這樣

public partial class ControlButton : UserControl 
    { 
      .. 
      .. 

     public ControlButton(String id) 
     { 
      InitializeComponent(); 
      this.Click += new EventHandler(ControlButton_Click); 
      this.MouseEnter += new MouseEventHandler(ControlButton_MouseEnter); 
     } 
    } 

的問題是,Click事件不會被解僱一致。每點擊5-6次就會得到點擊。 MouseEnter事件沒有問題,並且它始終被解僱。

我也試過this.MouseClick,this.MouseDown事件引發一個事件,但即使這些工作也不一致。任何想法如何解決這個問題?

回答

1

簡短回答:另一個控件或窗體可能處理WM_LBUTTONDOWN消息。

此用戶控件是否有任何孩子,並在點擊之前關注它?這可以給我們更多的信息來完全回答你的問題。

您是否看過控件在單擊它時收到的WM_MESSAGE?

+0

嗨,謝謝你的回答。我沒有深入瞭解控件的內部知識。我會試着弄清楚如何得到這些消息。 – Darzen 2014-10-31 16:10:55

+0

順便說一下。它有一個孩子 - >一個Label()。 我刪除了標籤,好像控件對點擊正確響應!謝謝!! – Darzen 2014-10-31 16:13:06