erança abstrata do UserControl no designer do Visual Stud

abstract class CustomControl : UserControl 
{
    protected abstract int DoStuff();
}

class DetailControl : CustomControl
{
    protected override int DoStuff()
    { 
        // do stuff
        return result;
    }
}

Soltei um DetailControl em um formulário. Ele é renderizado corretamente em tempo de execução, mas o designer exibe um erro e não abre porque o controle base do usuário é abstrat

or enquanto, estou contemplando o patch a seguir, que me parece bastante errado, pois quero que as classes filho sejam forçadas a implementar o métod

class CustomControl : UserControl 
{
    protected virtual int DoStuff()
    {
        throw new InvalidOperationException("This method must be overriden.");
    }
}

class DetailControl : CustomControl
{
    protected override int DoStuff()
    { 
        // do stuff
        return result;
    }
}

Alguém tem uma idéia melhor de como contornar esse problema?

questionAnswers(9)

yourAnswerToTheQuestion