Control.OnBubbleEvent(Object, EventArgs) Method

Definition

Détermine si l’événement du contrôle serveur est passé dans la hiérarchie des contrôles serveur de l’interface utilisateur de la page.Determines whether the event for the server control is passed up the page's UI server control hierarchy.

protected:
 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

Parameters

source
Object

Source de l’événement.The source of the event.

args
EventArgs

Objet EventArgs qui contient les données d'événement.An EventArgs object that contains the event data.

Returns

Boolean

true si l'événement a été annulé ; sinon, false.true if the event has been canceled; otherwise, false. Par défaut, il s’agit de false.The default is false.

Examples

L’exemple suivant substitue la méthode OnBubbleEvent dans un contrôle serveur ASP.NET personnalisé, ParentControl.The following example overrides the OnBubbleEvent method in a custom ASP.NET server control, ParentControl. Cette méthode est appelée lorsqu’un contrôle enfant de ParentControl appelle la méthode RaiseBubbleEvent.This method is invoked when a child control of ParentControl calls the RaiseBubbleEvent method. Dans ce cas, la classe ParentControl écrit deux chaînes dans la page conteneur ASP.NET, la première indiquant que sa méthode OnBubbleEvent a été appelée, la seconde qui identifie le contrôle de code source de la méthode 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)
   {
      myWriter.Write("ParentControl");
      RenderChildren(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)
      myWriter.Write("ParentControl")
      RenderChildren(myWriter)
   End Sub
End Class
 _

Remarks

Les contrôles serveur ASP.NET tels que les Repeater, les DataList et les contrôles Web GridView peuvent contenir des contrôles enfants qui déclenchent des événements.ASP.NET server controls such as the Repeater, DataList and GridView Web controls can contain child controls that raise events. Par exemple, chaque ligne d’un contrôle GridView peut contenir un ou plusieurs boutons créés dynamiquement par les modèles.For example, each row in a GridView control can contain one or more buttons created dynamically by templates. Au lieu que chaque bouton déclenche un événement individuellement, les événements des contrôles imbriqués sont « propagés », c’est-à-dire qu’ils sont envoyés au conteneur d’attribution de noms.Rather than each button raising an event individually, events from the nested controls are "bubbled" - that is, they are sent to the naming container. Le conteneur d’attribution de noms déclenche à son tour un événement générique appelé RowCommand avec des valeurs de paramètre.The naming container in turn raises a generic event called RowCommand with parameter values. Ces valeurs vous permettent de déterminer le contrôle qui a déclenché l’événement d’origine.These values allow you to determine which individual control that raised the original event. En répondant à cet événement unique, vous pouvez éviter d’avoir à écrire des méthodes de gestion des événements individuelles pour les contrôles enfants.By responding to this single event, you can avoid having to write individual event-handling methods for child controls.

Applies to

See also