27

コードでイベントをサブスクライブすると、Visual Studioは後でコードを自動的に完了し+=、適切なイベントハンドラーを生成します。

button.Click += new EventHandler(button_Click);
//              ↑_____auto generated code_____↑

デリゲートインスタンスを明示的に作成する方法に注意してください。C#2以降、メソッドグループは暗黙的にデリゲートに変換可能ですが、IDEの動作はVS2010でも変更されていません。

だから私は知りたいのですが、代わりにこのようなコードを生成する方法はありますか?

button.Click += button_Click;

すべての人にわかりやすくするために編集
します。上記のコードはデザイナーファイルに含まれていません(どの構文が使用されているかは関係ありません)。+=これは、イベント名の後に入力してを押すとトリガーされるスニペットです。TAB


EDIT2これをConnectの提案
として報告しました。現在の動作も変更したい場合は、投票できます。

4

3 に答える 3

2

Connectに関する提案は修正済みとしてマークされているため、新しい動作はVS11の次のパブリックビルドに含まれる必要があります。

編集:チェックしたばかりですが、実際にベータ版に含まれています。

于 2011-11-10T23:14:50.873 に答える
1

質問を明確にしていただきありがとうございます。残念ながら、C#言語サービスによって生成されるイベントフックアップコードを構成またはカスタマイズする方法はありません。さらに悪いことに、メソッドスタブの生成機能はイベントフックアップでも機能しませんが、機能するはずです。これは、VisualStudioの次のリリースですでに修正されています。

この特定の機能について、これ以上のストーリーはありません。:-(

于 2010-12-17T22:29:59.633 に答える
0

数年前から、この拡張機能をVisualStudioに使用しています。

于 2015-11-20T16:38:29.567 に答える