.NET Framework Class Library
Control..::.RaiseBubbleEvent Method

Updated: November 2007

Assigns any sources of the event and its information to the control's parent.

Namespace:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)

Visual Basic (Declaration)
Protected Sub RaiseBubbleEvent ( _
    source As Object, _
    args As EventArgs _
)
Visual Basic (Usage)
Dim source As Object
Dim args As EventArgs

Me.RaiseBubbleEvent(source, args)
C#
protected void RaiseBubbleEvent(
    Object source,
    EventArgs args
)
Visual C++
protected:
void RaiseBubbleEvent(
    Object^ source, 
    EventArgs^ args
)
J#
protected void RaiseBubbleEvent(
    Object source,
    EventArgs args
)
JScript
protected function RaiseBubbleEvent(
    source : Object, 
    args : EventArgs
)

Parameters

source
Type: System..::.Object

The source of the event.

args
Type: System..::.EventArgs

An EventArgs object that contains the event data.

ASP.NET server controls such as the Repeater, DataList and GridView Web controls can contain child controls that raise events. 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 control's parent. The parent 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. By responding to this single event, you can avoid having to write individual event-handling methods for child controls.

While you cannot override this method, controls you author can handle or raise bubbled events by overriding the OnBubbleEvent method.

The following code example demonstrate how to create a custom class, ChildControl, overriding the Button..::.OnClick method to call the RaiseBubbleEvent method that sends the Button..::.Click event to its parent ASP.NET server control. When the user clicks a button in an ASP.NET page that includes an instance of ChildControl, it raises the OnBubbleEvent method on the parent control that contains the instance of ChildControl and writes the string "The ChildControl class OnClick method is called" to the page.

Visual Basic
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 'OnClick
End Class 'ChildControl 

C#
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);
   }

J#
public class ChildControl extends Button
{
    protected void OnClick(EventArgs e)
    {
        super.OnClick(e);
        get_Context().get_Response().Write("<br><br>ChildControl's OnClick"
            + " called.");
        // Bubble this event to parent.
        RaiseBubbleEvent(this, e);
    } //OnClick

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
Page view tracker