Control.RaiseBubbleEvent(Object, EventArgs) メソッド

定義

イベントのソースおよびその情報をコントロールの親に割り当てます。

protected:
 void RaiseBubbleEvent(System::Object ^ source, EventArgs ^ args);
protected void RaiseBubbleEvent (object source, EventArgs args);
member this.RaiseBubbleEvent : obj * EventArgs -> unit
Protected Sub RaiseBubbleEvent (source As Object, args As EventArgs)

パラメーター

source
Object

イベントのソース。

args
EventArgs

イベント データを格納している EventArgs オブジェクト。

次のコード例では、 メソッドをオーバーライドして、ChildControlイベントをButton.OnClickサーバー コントロールの親 ASP.NET に送信Button.Clickするメソッドを呼び出すRaiseBubbleEventカスタム クラスを作成する方法を示します。 ユーザーが のインスタンスを含む ASP.NET ページ内のボタンをクリックすると、 のChildControlインスタンスChildControlを含む親コントロールで メソッドが発生OnBubbleEventし、"ChildControl クラス OnClick メソッドが呼び出されます" という文字列がページに書き込まれます。

public class ChildControl : Button
{
   [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
   protected override void OnClick(EventArgs e) 
   {
      base.OnClick(e);
      Context.Response.Write("<br><br>ChildControl's OnClick called.");
      // Bubble this event to parent.
      RaiseBubbleEvent(this, e);
   }
Public Class ChildControl
   Inherits Button
   
   <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
   Protected Overrides Sub OnClick(e As EventArgs)
      MyBase.OnClick(e)
      Context.Response.Write("<br><br>ChildControl's OnClick called.")
      ' Bubble this event to parent.
      RaiseBubbleEvent(Me, e)
   End Sub
End Class

注釈

などのサーバー コントロール RepeaterDataList ASP.NET、および GridView Web コントロールには、イベントを発生させる子コントロールを含めることができます。 たとえば、コントロールの各行には GridView 、テンプレートによって動的に作成された 1 つ以上のボタンを含めることができます。 各ボタンが個別にイベントを発生させるのではなく、入れ子になったコントロールからのイベントは "バブル" されます。つまり、イベントはコントロールの親に送信されます。 その親は、パラメーター値を使用して という RowCommand 汎用イベントを発生させます。 これらの値を使用すると、元のイベントを発生させた個々のコントロールを決定できます。 この 1 つのイベントに応答することで、子コントロールの個々のイベント処理メソッドを記述する必要がなくなります。

このメソッドをオーバーライドすることはできませんが、作成したコントロールは、 メソッドをオーバーライドすることで、バブル イベントを OnBubbleEvent 処理または発生させることができます。

適用対象

こちらもご覧ください