If you are working with either a new custom server control or a normal web user control, this is the proper way of adding an event that can be handled by the parent control of the child control you are develping:
Add the following to the control (Server Control / Web User Control ) being developed:
#region Event Handler
private static readonly object EventBubbleRaised = new object();
public event EventHandler BubbleRaise
{
add
{
Events.AddHandler(EventBubbleRaised, value);
}
remove
{
Events.RemoveHandler(EventBubbleRaised, value);
}
}
protected virtual void OnBubbleClick(EventArgs e)
{
EventHandler BubbleRaised = (EventHandler)Events[EventBubbleRaised];
if (BubbleRaised != null)
BubbleRaised(this, e);
}
#endregion
In the parent page / control, you add this in the Init method:
BubbleControl.BubbleRaise += new EventHandler(ControlName_BubbleRaise);
Then you define you our handler:
private void ControlName_BubbleRaise(object sender, EventArgs e)
{
Response.Write(sender.GetType().ToString());
}
That was a simple example, but at least you know now the steps.
Regards
Tags: ASP.NET 1.x, ASP.NET 2.0 - General