Control.OnBubbleEvent(Object, EventArgs) Control.OnBubbleEvent(Object, EventArgs) Control.OnBubbleEvent(Object, EventArgs) Control.OnBubbleEvent(Object, EventArgs) Method


サーバー コントロールのイベントをページの UI サーバー コントロールの階層構造に渡すかどうかを決定します。Determines whether the event for the server control is passed up the page's UI server control hierarchy.

 virtual bool OnBubbleEvent(System::Object ^ source, EventArgs ^ args);
protected virtual bool OnBubbleEvent (object source, EventArgs args);
abstract member OnBubbleEvent : obj * EventArgs -> bool
override this.OnBubbleEvent : obj * EventArgs -> bool
Protected Overridable Function OnBubbleEvent (source As Object, args As EventArgs) As Boolean


Object Object Object Object

イベントのソース。The source of the event.

EventArgs EventArgs EventArgs EventArgs

イベント データを格納している EventArgs オブジェクト。An EventArgs object that contains the event data.


イベントがキャンセルされた場合は true。それ以外の場合は falsetrue if the event has been canceled; otherwise, false. 既定値は、false です。The default is false.

次の例では、上書き、OnBubbleEventメソッドにカスタム ASP.NET サーバー コントロール、 ParentControlThe following example overrides the OnBubbleEvent method in a custom ASP.NET server control, ParentControl. 子コントロールにある場合、このメソッドが呼び出されるParentControl呼び出し、RaiseBubbleEventメソッド。This method is invoked when a child control of ParentControl calls the RaiseBubbleEvent method. この場合、ParentControlクラスは、最初のことを示すを含む ASP.NET ページに 2 つの文字列を書き込みますをそのOnBubbleEventメソッドが呼び出された、2 つ目の特定のソース管理、RaiseBubbleEventメソッド。When this happens, the ParentControl class writes two strings to the containing ASP.NET page, the first stating that its OnBubbleEvent method has been called, the second identifying the source control of the RaiseBubbleEvent method.

public class ParentControl : Control 
   [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
   protected override bool OnBubbleEvent(object sender, EventArgs e)
      Context.Response.Write("<br><br>ParentControl's OnBubbleEvent called.");
      Context.Response.Write("<br>Source of event is: " + sender.ToString());
      return true;
   [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] 
   protected override void Render( HtmlTextWriter myWriter)
Public Class ParentControl
   Inherits Control
   <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
   Protected Overrides Function OnBubbleEvent(sender As Object, e As EventArgs) As Boolean
      Context.Response.Write("<br><br>ParentControl's OnBubbleEvent called.")
      Context.Response.Write(("<br>Source of event is: " + sender.ToString()))
      Return True
   End Function 'OnBubbleEvent
   <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
   Protected Overrides Sub Render(myWriter As HtmlTextWriter)
   End Sub 'Render
End Class 'ParentControl


ASP.NET サーバー コントロールなど、 RepeaterDataListGridViewWeb コントロールがイベントを発生させる子コントロールを含めることができます。ASP.NET server controls such as the Repeater, DataList and GridView Web controls can contain child controls that raise events. 内の各の行など、GridViewコントロールがテンプレートで動的に作成された 1 つまたは複数のボタンを含めることができます。For example, each row in a GridView control can contain one or more buttons created dynamically by templates. 各ボタンでは、個別にイベントを発生させるのではなく、入れ子になったコントロールからのイベントは「バブル」- は、名前付けコンテナーに送信されます。Rather than each button raising an event individually, events from the nested controls are "bubbled" - that is, they are sent to the naming container. 名前付けコンテナーがさらと呼ばれる一般的なイベントを発生させるRowCommandパラメーター値を使用します。The naming container in turn raises a generic event called RowCommand with parameter values. これらの値を使用すると、元のイベントを発生させた個別のコントロールを決定できます。These values allow you to determine which individual control that raised the original event. この 1 つのイベントに応答して、子コントロールの個々 のイベント処理メソッドを記述することを回避できます。By responding to this single event, you can avoid having to write individual event-handling methods for child controls.