When should one do the following?
class Foo : Control
{
    protected override void OnClick(EventArgs e)
    {
        // new code here
    }
}
As opposed to this?
class Foo : Control
{
    public Foo()
    {
        this.Click += new EventHandler(Clicked);
    }
    private void Clicked(object sender, EventArgs e)
    {
        // code
    }
}