public class Control
{
private System.ComponentModel.EventHandlerList m_events;
protected System.ComponentModel.EventHandlerList Events
{
get
{
if (this.m_events == null)
{
this.m_events = new System.ComponentModel.EventHandlerList();
}
return this.m_events;
}
}
}
public class Page : Control
{
internal static readonly object EventLoadComplete = new object();
public event EventHandler LoadComplete
{
add
{
base.Events.AddHandler(EventLoadComplete, value);
}
remove
{
base.Events.RemoveHandler(EventLoadComplete, value);
}
}
protected virtual void OnLoadComplete(EventArgs e)
{
EventHandler handler = (EventHandler)base.Events[EventLoadComplete];
if (handler != null)
{
handler(this, e);
}
}
}
public class TemplateControl : Control
{
private static System.Collections.IDictionary s_eventObjects = new System.Collections.Hashtable();
static TemplateControl()
{
s_eventObjects.Add("Page_LoadComplete", Page.EventLoadComplete);
}
}