Control.RaiseBubbleEvent(Object, EventArgs) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przypisuje wszystkie źródła zdarzenia i jego informacje do elementu nadrzędnego kontrolki.
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
Źródło zdarzenia.
Przykłady
Poniższy przykład kodu pokazuje, jak utworzyć klasę niestandardową , ChildControl
przesłaniając Button.OnClick metodę w celu wywołania RaiseBubbleEvent metody, która wysyła Button.Click zdarzenie do nadrzędnej ASP.NET kontroli serwera. Gdy użytkownik kliknie przycisk na stronie ASP.NET zawierającej wystąpienie obiektu , zgłasza OnBubbleEvent metodę w kontrolce nadrzędnej zawierającej wystąpienie ChildControl
ChildControl
i zapisuje ciąg "Metoda OnClick klasy ChildControl jest wywoływana" na stronie.
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
Uwagi
ASP.NET kontrolek serwera, takich jak kontrolki Repeater, DataList i GridView sieci Web mogą zawierać kontrolki podrzędne, które zgłaszają zdarzenia. Na przykład każdy wiersz w kontrolce GridView może zawierać jeden lub więcej przycisków utworzonych dynamicznie przez szablony. Zamiast każdego przycisku, który podnosi zdarzenie indywidualnie, zdarzenia z zagnieżdżonych kontrolek są "bąbelkowe" — czyli są wysyłane do elementu nadrzędnego kontrolki. Element nadrzędny z kolei zgłasza zdarzenie ogólne o nazwie RowCommand z wartościami parametrów. Te wartości umożliwiają określenie poszczególnych kontrolek, które wzbudziły oryginalne zdarzenie. Odpowiadając na to pojedyncze zdarzenie, można uniknąć konieczności pisania poszczególnych metod obsługi zdarzeń dla kontrolek podrzędnych.
Chociaż nie można zastąpić tej metody, kontrolki, które autor może obsługiwać lub zgłaszać zdarzenia bąbelkowe, przesłaniając metodę OnBubbleEvent .