Поделиться через


Control.OnBubbleEvent(Object, EventArgs) Метод

Определение

Определяет, передается ли событие серверного элемента управления вверх по иерархии серверных элементов управления пользовательского интерфейса страницы.

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. Этот метод вызывается, когда дочерний элемент управления вызывает ParentControlRaiseBubbleEvent метод . В этом случае 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 серверные элементы управления, такие как Repeater, DataList и GridView веб-элементы управления, могут содержать дочерние элементы управления, которые вызывают события. Например, каждая строка в элементе GridView управления может содержать одну или несколько кнопок, динамически создаваемых шаблонами. Вместо каждой кнопки, которая вызывает событие по отдельности, события из вложенных элементов управления "пузырьковые", то есть отправляются в контейнер именования. Контейнер именования, в свою очередь, вызывает универсальное событие RowCommand со значениями параметров. Эти значения позволяют определить, какой отдельный элемент управления вызвал исходное событие. Отвечая на это одно событие, можно избежать необходимости писать отдельные методы обработки событий для дочерних элементов управления.

Применяется к

См. также раздел