Condividi tramite


Control.RaiseBubbleEvent(Object, EventArgs) Metodo

Definizione

Assegna eventuali origini dell'evento e relative informazioni al controllo padre.

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)

Parametri

source
Object

Origine dell'evento.

args
EventArgs

Oggetto EventArgs che contiene i dati dell'evento.

Esempio

Nell'esempio di codice seguente viene illustrato come creare una classe personalizzata, , ChildControleseguendo l'override Button.OnClick del metodo per chiamare il RaiseBubbleEvent metodo che invia l'evento Button.Click al relativo controllo server ASP.NET padre. Quando l'utente fa clic su un pulsante in una pagina ASP.NET che include un'istanza di , genera il OnBubbleEvent metodo nel controllo padre che contiene l'istanza di ChildControlChildControl e scrive la stringa "Il metodo OnClick della classe ChildControl viene chiamato" nella pagina.

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

Commenti

ASP.NET controlli server, ad esempio , RepeaterDataList e GridView i controlli Web possono contenere controlli figlio che generano eventi. Ad esempio, ogni riga in un GridView controllo può contenere uno o più pulsanti creati dinamicamente dai modelli. Anziché ogni pulsante che genera un evento singolarmente, gli eventi dei controlli annidati sono "bolle", ovvero vengono inviati all'elemento padre del controllo. L'elemento padre genera a sua volta un evento generico denominato RowCommand con valori di parametro. Questi valori consentono di determinare quale singolo controllo ha generato l'evento originale. Rispondendo a questo singolo evento, è possibile evitare di dover scrivere singoli metodi di gestione degli eventi per i controlli figlio.

Anche se non è possibile eseguire l'override di questo metodo, i controlli che è possibile gestire o generare eventi con bolle eseguendo l'override del OnBubbleEvent metodo.

Si applica a

Vedi anche