Button - Farbe setzen aber später zeichnen.
-
Hallo,
kann ich einem Button eine Hintergrundfarbe zuweisen, die aber nicht sofort, sondern erst mit einem späteren Funktionsaufruf gezeichnet wird?
-
btn schrieb:
kann ich einem Button eine Hintergrundfarbe zuweisen, die aber nicht sofort, sondern erst mit einem späteren Funktionsaufruf gezeichnet wird?
Wieso setzt du die Farbe nicht erst dann, wenn die spätere Funktion aufgerufen wird?
Grüssli
-
Ja, das geht natürlich, wenn ich den Farbwert in einer Variable speichere. Das ist vermutlich auch die bessere Lösung.
-
Das sofortige Neurendern von Windows.Forms-Controls kann unterbunden bzw. erlaubt werden:
// Neurendern unterbinden Control.SuspendLayout(); // Neurendern erlauben Control.ResumeLayout();
-
Mit
SuspendLayout
verhinderst du nicht das sofortige neu zeichnen. BeiSuspendLayout
geht es nur um das Verhindern der Positionierungberechnung. Es wird dann nicht sofort die MethodeOnLayout
aufgerufen, wenn man zum Beispiel die Grösse verändert. Man sollteSuspendLayout
undResumeLayout
auch nur dazu verwenden, wenn man mehrere Dinge am Layout auf einmal ändert.Grüssli