Button gedrückt

MikeBi

Mitglied
Hallo,

ich möchte einen Split-Button erstellen, wie im Outlook (beim senden / empfangen). Ich wollte 2 Buttons einsetzen und das OnPaint Ereignis überschreiben. Besteht im OnPaint die Möglichkeit, zu ermitteln, ober der Button gedrückt oder nicht gedrückt darzustellen ist ?
Oder hat schon mal jemand so ein User-Control erstellt ? Ich bin für Vorschläge dankbar.

Mike
 
Hallo.
Ich würde dir Empfehlen eine Klasse von System.Windows.Forms.Button zu ergeben und dort die OnPaint Methode überschreiben. Mittels OnClick, OnMouseDown und OnMouseUp kannst du dein gewünschtes Verhalten nachbilden.
OnMouseDown im Pfeilbereich zeigt dir dein Menü an. OnMouseDown im normalen Button bereich einfach entsprechend zeichnen und speichern dass nicht das Menü angezeigt wurde.
Im OnClick löst du base.OnClick aus wenn das Menü nicht angezeigt wurde.

Ansonsten einfach mal bei CodeProject vorbeischauen. Dort gibts auch schon solche Controls bei welchen man sich Ideen klauen kann. ;)

Grüße Daniel
 
Zurück