Frage

Ich möchte verdoppeln einen benutzerdefinierten Steuer puffern die Schaltflächen enthält. Ich habe verschiedene Wege versucht, die Kontrolle zu verdoppeln Puffer; SetStyle, BufferedGraphicsContext und in eine Bitmap-Zeichnung. Diese alle arbeiten gut für die benutzerdefinierte Zeichnung der Kontrolle, aber keiner von ihnen behandeln die Schaltfläche, um einen Hintergrundpuffer zeichnen. Wie erreiche ich das?

War es hilfreich?

Lösung

Technisch kann man nicht, und Sie sollten wirklich nicht brauchen, wenn sie sind Standard .NET WinForms-Tasten.

Die Tasten selbst, dass durch die geschützte Eigenschaft DoubleBuffered steuern. Der einzige Weg, dies zu Zugang wäre eine neue Klasse von S.W.F.Button abzuleiten und umzusetzen Code die DoubleBuffered Eigenschaft für Instanzen dieser Klasse zu ermöglichen (ich wahrscheinlich, dass im Konstruktor tun würde). Schließlich verwenden Objekte dieser neuen Klasse auf dem Formular statt S.W.F.Buttons.

Allerdings, wie ich mich erinnere, sind Tasten rein aus WinAPI gezogen; sie sind nicht GDI +. Als Ergebnis sollten Sie nicht Notwendigkeit doppelt pufferspeichert ihre Zeichnung. Das heißt, ich weiß nicht, Ihr Nutzungsszenario und ich weiß nicht, welche Symptome Ihre App angezeigt wird, so dass ich könnte falsch sein. :)

Sie sollten erwägen, das Buch Check-out Pro .NET 2.0 Windows Forms und Benutzerdefinierte Steuerelemente in C # . All dies wurde in diesem Buch von Informationen zusammengefasst.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top