Control.OnBubbleEvent(Object, EventArgs) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Determina si el evento del control de servidor se pasa a la jerarquía de control de servidor de la interfaz de usuario (UI) de la página.
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
Parámetros
- source
- Object
Origen del evento.
Devoluciones
Es true
si se ha cancelado el evento; en caso contrario, es false
. De manera predeterminada, es false
.
Ejemplos
En el ejemplo siguiente se invalida el OnBubbleEvent método de un control de servidor de ASP.NET personalizado, ParentControl
. Este método se invoca cuando un control secundario de ParentControl
llama al RaiseBubbleEvent método . Cuando esto sucede, la ParentControl
clase escribe dos cadenas en la página contenedora ASP.NET, la primera que indica que se ha llamado a su OnBubbleEvent método, la segunda que identifica el control de código fuente del RaiseBubbleEvent método.
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
_
Comentarios
ASP.NET controles de servidor, como , RepeaterDataList y GridView los controles web pueden contener controles secundarios que generan eventos. Por ejemplo, cada fila de un GridView control puede contener uno o varios botones creados dinámicamente por plantillas. En lugar de cada botón que genera un evento individualmente, los eventos de los controles anidados se "propagan", es decir, se envían al contenedor de nomenclatura. A su vez, el contenedor de nomenclatura genera un evento genérico denominado RowCommand con valores de parámetro. Estos valores permiten determinar qué control individual generó el evento original. Al responder a este único evento, puede evitar tener que escribir métodos individuales de control de eventos para controles secundarios.