Control.RaiseBubbleEvent(Object, EventArgs) Method

Definition

Assigne les sources éventuelles de l'événement et ses informations au parent du contrôle.Assigns any sources of the event and its information to the control's parent.

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)

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.

Examples

L’exemple de code suivant montre comment créer une classe personnalisée, ChildControl, substituer la méthode Button.OnClick pour appeler la méthode RaiseBubbleEvent qui envoie l’événement Button.Click à son contrôle serveur ASP.NET parent.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. Quand l’utilisateur clique sur un bouton dans une page ASP.NET qui inclut une instance de ChildControl, il déclenche la méthode OnBubbleEvent sur le contrôle parent qui contient l’instance de ChildControl et écrit la chaîne « la méthode OnClick de la classe ChildControl est appelée » sur la page.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.

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

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 parent du contrôle.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. À son tour, le parent déclenche un événement générique appelé RowCommand avec des valeurs de paramètre.The parent 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.

Même si vous ne pouvez pas substituer cette méthode, les contrôles que vous créez peuvent gérer ou déclencher des événements propagés en substituant la méthode OnBubbleEvent.While you cannot override this method, controls you author can handle or raise bubbled events by overriding the OnBubbleEvent method.

Applies to

See also