私はC#を初めて使いました.ASPでカスタムコントロールを作成していたとき、私の考えで作成された質問:なぜオーバーライド機能にsender
オブジェクトがないのですか?例えばオーバーライド機能に送信者オブジェクトがないのはなぜですか?
:
protected override void OnRowCreated(GridViewRowEventArgs e)
が、我々はコード内でこのイベントを使用する場合、「送信者」
私はC#を初めて使いました.ASPでカスタムコントロールを作成していたとき、私の考えで作成された質問:なぜオーバーライド機能にsender
オブジェクトがないのですか?例えばオーバーライド機能に送信者オブジェクトがないのはなぜですか?
:
protected override void OnRowCreated(GridViewRowEventArgs e)
が、我々はコード内でこのイベントを使用する場合、「送信者」
という名前型オブジェクトの変数があるでで始まるこれらの方法はする必要はありませんを送信したを受信します。送信者の一部であるため、this
はです。送信者(イベント全体を宣言するクラスのインスタンス)です。
特定のイベントにサブスクライブするユーザーがいる場合、別のクラスである可能性があり、そのイベントを発生させたユーザーを知る必要があります。
protected override void On*(*EventArgs e)
のようなシグネチャを持つメソッドでは、派生型が親クラスで定義されたイベントを発生させることができます。これらは、独自のインスタンスに対してイベントを発生させるメソッドなので、送信者オブジェクトを取得するには、this
を使用する必要があります。
ありがとうございますが、私は1つしか選択できません "正解" –
ありがとうございました –
@ArashGhasemiRadいいえ、あなたは歓迎です –