Control.RaiseBubbleEvent(Object, EventArgs) Metoda

Definice

Přiřadí všechny zdroje události a její informace nadřazenému ovládacímu prvku.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)

Parametry

source
Object

Zdroj událostiThe source of the event.

args
EventArgs

EventArgsObjekt, který obsahuje data události.An EventArgs object that contains the event data.

Příklady

Následující příklad kódu ukazuje, jak vytvořit vlastní třídu, ChildControl , přepsání Button.OnClick metody pro volání RaiseBubbleEvent metody, která odesílá Button.Click událost do nadřazeného ovládacího prvku ASP.NET serveru.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. Když uživatel klikne na tlačítko na stránce ASP.NET, která obsahuje instanci ChildControl , vyvolá OnBubbleEvent metodu v nadřazeném ovládacím prvku, který obsahuje instanci ChildControl a zapíše řetězec "metoda" ChildControl třídy při kliknutí "je volána na stránku.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

Poznámky

Ovládací prvky ASP.NET serveru, jako jsou Repeater , DataList a GridView webové ovládací prvky mohou obsahovat podřízené ovládací prvky, které vyvolávají události.ASP.NET server controls such as the Repeater, DataList and GridView Web controls can contain child controls that raise events. Každý řádek v GridView ovládacím prvku například může obsahovat jeden nebo více tlačítek vytvořených dynamicky šablonou.For example, each row in a GridView control can contain one or more buttons created dynamically by templates. Místo toho, aby se každé tlačítko vyvolalo událost jednotlivě, události z vnořených ovládacích prvků jsou "bublinové" – to znamená, že jsou odesílány nadřazenému ovládacímu prvku.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. Nadřazený objekt zase vyvolá obecnou událost nazvanou RowCommand s hodnotami parametrů.The parent in turn raises a generic event called RowCommand with parameter values. Tyto hodnoty umožňují určit, který jednotlivý ovládací prvek vyvolal původní událost.These values allow you to determine which individual control that raised the original event. Tím, že odpovíte na tuto jedinou událost, se můžete vyhnout nutnosti psát jednotlivé metody zpracování událostí pro podřízené ovládací prvky.By responding to this single event, you can avoid having to write individual event-handling methods for child controls.

I když nemůžete přepsat tuto metodu, ovládací prvky, které vytváříte, mohou zpracovávat nebo vyvolávat bublinové události přepsáním OnBubbleEvent metody.While you cannot override this method, controls you author can handle or raise bubbled events by overriding the OnBubbleEvent method.

Platí pro

Viz také