Condividi tramite


Control.OnBubbleEvent(Object, EventArgs) Metodo

Definizione

Determina se l'evento per il controllo server viene passato a un livello superiore nella gerarchia dei controlli server dell'interfaccia utente per la pagina.

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

Parametri

source
Object

Origine dell'evento.

args
EventArgs

Oggetto EventArgs che contiene i dati dell'evento.

Restituisce

true se l'evento è stato annullato. In caso contrario, false. Il valore predefinito è false.

Esempio

Nell'esempio seguente viene eseguito l'override del OnBubbleEvent metodo in un controllo server di ASP.NET personalizzato, ParentControl. Questo metodo viene richiamato quando un controllo figlio di ParentControl chiama il RaiseBubbleEvent metodo. In questo caso, la ParentControl classe scrive due stringhe nella pagina contenente ASP.NET, la prima che indica che OnBubbleEvent il metodo è stato chiamato, il secondo che identifica il controllo del codice sorgente del RaiseBubbleEvent metodo.

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
 _

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 al contenitore di denominazione. Il contenitore di denominazione 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.

Si applica a

Vedi anche