Control.OnBubbleEvent(Object, EventArgs) 方法

定义

确定服务器控件的事件是否沿页的 UI 服务器控件层次结构向上传递。

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

参数

source
Object

事件源。

args
EventArgs

包含事件数据的 EventArgs 对象。

返回

如果事件已被取消,则为 true;否则为 false。 默认值为 false

示例

以下示例重写 OnBubbleEvent 自定义 ASP.NET 服务器控件 ParentControl中的 方法。 当 的子控件 ParentControl 调用 方法时,将调用此方法 RaiseBubbleEvent 。 发生这种情况时, ParentControl 类会将两个字符串写入包含 ASP.NET 页,第一个字符串表示已调用其 OnBubbleEvent 方法,第二个字符串标识方法的 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
 _

注解

ASP.NET 服务器控件(如 RepeaterDataListGridView Web 控件可以包含引发事件的子控件。 例如,控件中的每一 GridView 行可以包含模板动态创建的一个或多个按钮。 嵌套控件中的事件是“气泡”的,而不是每个按钮单独引发事件, 也就是说,它们被发送到命名容器。 命名容器反过来会引发名为 RowCommand 的泛型事件,其中包含参数值。 通过这些值,可以确定引发原始事件的单个控件。 通过响应此单个事件,可以避免为子控件编写单独的事件处理方法。

适用于

另请参阅