Control.RaiseBubbleEvent(Object, EventArgs) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
イベントのソースとその情報をコントロールの親に割り当てます。
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 メソッドをオーバーライドして、Button.Click イベントを親 ASP.NET サーバー コントロールに送信する RaiseBubbleEvent メソッドを呼び出す方法を示します。 ユーザーは、ChildControl のインスタンスを含む ASP.NET ページ内のボタンをクリックすると、ChildControl のインスタンスを含む親コントロールで OnBubbleEvent メソッドを発生させ、"The ChildControl class OnClick method is called" という文字列をページに書き込みます。
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
注釈
Repeater、DataList、GridView Web コントロールなどの ASP.NET サーバー コントロールには、イベントを発生させる子コントロールを含めることができます。 たとえば、 GridView コントロールの各行には、テンプレートによって動的に作成された 1 つ以上のボタンを含めることができます。 各ボタンが個別にイベントを発生させるのではなく、入れ子になったコントロールからのイベントは "バブル" されます。つまり、イベントはコントロールの親に送信されます。 親は、パラメーター値を持つ RowCommand という汎用イベントを発生させます。 これらの値を使用すると、元のイベントを発生させた個々のコントロールを決定できます。 この 1 つのイベントに応答することで、子コントロールの個々のイベント処理メソッドを記述する必要がなくなります。
このメソッドをオーバーライドすることはできませんが、作成したコントロールは、 OnBubbleEvent メソッドをオーバーライドすることで、バブル イベントを処理または発生させることができます。