0

このコードを理解できません。「ViewDisspearing」とは何ですか? ブロックの「追加」と「削除」についてはどうでしょうか。

public event EventHandler ViewDisappearing;

public event EventHandler ViewDissapearing {
    add {
        ViewDisappearing += value;
    }
    remove {
        ViewDisappearing -= value;
    }
}
4

3 に答える 3

4

これは、同じイベントに 2 つの名前を付けるために行われます。「ViewDisspearing」は、以前はイベントの名前が間違っていた方法であり、「ViewDisspearing」イベントをサブスクライブするすべての既存のコードは、代わりに、新しい正しいスペルの「ViewDisappearing」イベントをサブスクライブするように再ルーティングされます。

誰かが を呼び出すと、add { ... }ブロックが実行されViewDissapearing += ...ますViewDisappearing += that same ...remove { ... }ブロック とについても同様です-=

于 2012-06-11T14:44:26.183 に答える
1

これは、他のコードがこのイベントにアタッチできるようにするためです。これは、変数の Get / Set Property と同じ考え方です。イベントの場合は、追加/削除です。変数のプロパティと同様に、変数を直接使用することも、プロパティを使用することもできます。イベントを追加するときにカスタム コードを追加する場合は、通常、プロパティを使用します。

于 2012-06-11T14:46:09.323 に答える
0

これは、クラス内のイベントに対してコンパイラによって通常自動生成されるものを明示的に示しています。

于 2012-06-11T14:43:15.103 に答える