2011-11-08 24 views
1

我想將winform OnMouseDown事件設置爲我定義的方法稱爲SelectMouseDown。沒有重載的方法「OnMouseDown」與0參數

的方法定義如下:

method Maker.SelectMouseDown(Sender: Object; e: System.Windows.Forms.MouseEventArgs); 

,我想做到以下幾點:

OnMouseDown += System.Windows.Forms.MouseEventHandler(@Self.SelectMouseDown); 

編譯器會引發以下錯誤信息:「沒有重載方法」 onmousedown事件「有0個參數」。

我在做什麼錯?如何在運行時設置事件?

由於提前,

+0

你確定'OnMouseDown'是*事件*,而不是*方法*(調用'MouseDown'事件)? –

回答

4

你忘了new,而該事件被命名爲MouseDown爲馬克·Gravell指出:

MouseDown += new System.Windows.Forms.MouseEventHandler(@Self.SelectMouseDown); 

我不知道德爾福,但在C#編譯器可以創建代理自動:

MouseDown += @Self.SelectMouseDown; 
+0

非常感謝。它在我添加關鍵字new並將onmousedown更改爲mousedown之後起作用。 – ThN

相關問題