Wie erhalte ich ein DoubleClick-Ereignis in einem .NET-Optionsfeld?

Ich möchte in der Lage sein, die DoubleClick- oder MouseDoubleClick-Ereignisse über ein Standard-Windows-Optionsfeld abzufangen, aber sie scheinen ausgeblendet zu sein und funktionieren nicht. Im Moment habe ich folgenden Code:

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 );
        }
    }
}

Gibt es eine einfachere und sauberere Möglichkeit?

Edit: Als Hintergrund stimme ich Raymond Chens Post zuHier dass die Fähigkeit, auf ein Optionsfeld zu doppelklicken (wenn das die sind)nur Steuerelemente im Dialogfeld) macht den Dialog für Personen, die sich damit auskennen, nur geringfügig einfacher.

In Vista mit Taskdialogen (sieheDiese Microsoft-Richtlinienseite oderDiese MSDN-Seite befasst sich speziell mit der Task-Dialog-API) wäre die naheliegende Lösung, aber wir haben nicht den Luxus davon.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage