Control.RaiseBubbleEvent(Object, EventArgs) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Назначает любые источники события и ее сведения родительскому элементу управления.
protected:
void RaiseBubbleEvent(System::Object ^ source, EventArgs ^ args);
protected void RaiseBubbleEvent(object source, EventArgs args);
member this.RaiseBubbleEvent : obj * EventArgs -> unit
Protected Sub RaiseBubbleEvent (source As Object, args As EventArgs)
Параметры
- source
- Object
Источник события.
Примеры
В следующем примере кода показано, как создать пользовательский класс ChildControl, переопределив метод Button.OnClick для вызова метода RaiseBubbleEvent, который отправляет событие Button.Click в родительский элемент управления сервера ASP.NET. Когда пользователь нажимает кнопку на странице ASP.NET, содержащей экземпляр ChildControl, вызывает метод OnBubbleEvent на родительском элементе управления, который содержит экземпляр ChildControl и записывает строку "Метод OnClick класса ChildControl onClick" на страницу.
public class ChildControl : Button
{
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")]
protected override void OnClick(EventArgs e)
{
base.OnClick(e);
Context.Response.Write("<br><br>ChildControl's OnClick called.");
// Bubble this event to parent.
RaiseBubbleEvent(this, e);
}
Public Class ChildControl
Inherits Button
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
Protected Overrides Sub OnClick(e As EventArgs)
MyBase.OnClick(e)
Context.Response.Write("<br><br>ChildControl's OnClick called.")
' Bubble this event to parent.
RaiseBubbleEvent(Me, e)
End Sub
End Class
Комментарии
ASP.NET серверные элементы управления, такие как Repeater, DataList и GridView Веб-элементы управления могут содержать дочерние элементы управления, которые вызывают события. Например, каждая строка в элементе GridView управления может содержать одну или несколько кнопок, созданных динамически шаблонами. Вместо каждой кнопки, вызывающей событие по отдельности, события из вложенных элементов управления "пузырьки" — то есть они отправляются родительскому элементу управления. Родительский элемент, в свою очередь, вызывает универсальное событие, вызываемое RowCommand со значениями параметров. Эти значения позволяют определить, какой отдельный элемент управления вызвал исходное событие. Отвечая на это одно событие, можно избежать необходимости писать отдельные методы обработки событий для дочерних элементов управления.
Хотя этот метод нельзя переопределить, элементы управления, которые вы создаете, могут обрабатывать или вызывать пузырьковые события, переопределяя OnBubbleEvent метод.