Control.OnBubbleEvent(Object, EventArgs) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Determina se o evento para o controlo do servidor é passado para a hierarquia de controlo do servidor UI da 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
A origem do evento.
Devoluções
true se o evento tiver sido cancelado; caso contrário, false. A predefinição é false.
Exemplos
O exemplo seguinte sobrepõe o método OnBubbleEvent num controlo personalizado ASP.NET servidor, ParentControl. Este método é invocado quando um controlo filho de ParentControl chama o RaiseBubbleEvent método. Quando isto acontece, a classe ParentControl escreve duas strings na página de ASP.NET que contém, a primeira indicando que o seu método OnBubbleEvent foi chamado, a segunda identificando o controlo de versões do método RaiseBubbleEvent.
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
_
Observações
ASP.NET controlos de servidor como os controlos web Repeater, DataList e GridView Web podem conter controlos filhos que geram eventos. Por exemplo, cada linha num GridView controlo pode conter um ou mais botões criados dinamicamente por templates. Em vez de cada botão levantar um evento individualmente, os eventos dos controlos aninhados são "bubbled" – ou seja, são enviados para o contentor de nomeação. O contentor de nomeação, por sua vez, gera um evento genérico chamado RowCommand com valores de parâmetro. Estes valores permitem-lhe determinar qual o controlo individual que originou o evento original. Ao responder a este único evento, pode evitar ter de escrever métodos individuais de gestão de eventos para controlos filhos.