Как получить событие DoubleClick в радиокнопке .NET?

Я хотел бы иметь возможность перехватывать события DoubleClick или MouseDoubleClick с помощью стандартной кнопки-переключателя winforms, но они, похоже, скрыты и не работают. На данный момент у меня есть такой код:

public class RadioButtonWithDoubleClick : RadioButton
{
    public RadioButtonWithDoubleClick()
        : base()
    {
        this.SetStyle( ControlStyles.StandardClick | ControlStyles.StandardDoubleClick, true );
    }

    [EditorBrowsable( EditorBrowsableState.Always ), Browsable( true )]
    public new event MouseEventHandler MouseDoubleClick;
    protected override void OnMouseDoubleClick( MouseEventArgs e )
    {
        MouseEventHandler temp = MouseDoubleClick;
        if( temp != null ) {
            temp( this, e );
        }
    }
}

Есть ли более простой и чистый способ сделать это?

Изменить: для справки, я согласен с постом Раймонда ЧенаВот что возможность двойного щелчка на переключателе (если этоonly элементы управления в диалоговом окне) делает диалоговое окно немного проще для людей, которые знают об этом.

В Vista, используя диалоги задач (см.эта страница руководства Microsoft или жеэта страница MSDN специально об API диалога задач) было бы очевидным решением, но мы не можем позволить себе такую роскошь.

Ответы на вопрос(4)

Ваш ответ на вопрос