2011-11-08 19 views
1

winform OnMouseDownイベントを、SelectMouseDownと呼ばれるメソッドに設定しようとしています。パラメータが0の "OnMouseDown"メソッドがオーバーロードされていません

方法は、以下のように定義されます。

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

を、私は次の操作を実行しようとしています:

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

コンパイラは、次のエラーメッセージがスローされます:「何のオーバーロードメソッドがありません」とれるonmousedown "0パラメータで"

私は間違っていますか?実行時にどのようにイベントを設定しますか?事前に

おかげで、

+0

'OnMouseDown'は*イベント*で、*メソッド*(' MouseDown'イベントを呼び出す)ではありませんか? –

答えて

4

あなたがnewを忘れてしまった、とマルクGravellが指摘したようにイベントがMouseDownという。

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

私は、Delphiについては知らないが、C#でコンパイラが作成することができますデリゲートは自動的に:

MouseDown += @Self.SelectMouseDown; 
+0

ありがとうございます。私は新しいキーワードを追加し、onmousedownをmousedownに変更した後で動作します。 – ThN

関連する問題