Control.OnBubbleEvent Method
Assembly: System.Web (in system.web.dll)
protected boolean OnBubbleEvent ( Object source, EventArgs args )
protected function OnBubbleEvent ( source : Object, args : EventArgs ) : boolean
Not applicable.
Parameters
- source
The source of the event.
- args
An EventArgs object that contains the event data.
Return Value
true if the event has been canceled; otherwise, false. The default is false.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 naming container. 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. By responding to this single event, you can avoid having to write individual event-handling methods for child controls.
The following example overrides the OnBubbleEvent method in a custom ASP.NET server control, ParentControl. This method is invoked when a child control of ParentControl calls the RaiseBubbleEvent method. 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) { myWriter.Write("ParentControl"); RenderChildren(myWriter); } }
public class ParentControl extends Control
{
protected boolean OnBubbleEvent(Object sender, EventArgs e)
{
get_Context().get_Response().Write("<br><br>ParentControl's"
+ " OnBubbleEvent called.");
get_Context().get_Response().Write(("<br>Source of event is: "
+ sender.ToString()));
return true ;
} //OnBubbleEvent
protected void Render(HtmlTextWriter myWriter)
{
myWriter.Write("ParentControl");
RenderChildren(myWriter);
} //Render
} //ParentControl