Wie reset to default button BackColor?
Ich war das Experimentieren mit verschiedenen Optionen für die Schaltfläche Hintergrundfarbe und endete änderung der BackColor
Eigenschaft in der Kategorie "Aussehen". Ich habe dann verändert es zurück zu dem, was es ist standardmäßig die Control
aber es sieht immer noch anders als andere Tasten:
Ich habe versucht das Projekt zu erstellen und dem Neustart von Visual Studio, aber es hat nicht geholfen.
Ich weiß, kann ich einfach ziehen Sie ein weiteres button-copy/paste-code, aber was bewirkt dies in Erster Linie und wie kann ich das richtig lösen?
InformationsquelleAutor der Frage Dennis Zaitsev | 2012-05-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
BackColor
Eigenschaft ist eine ambient-Eigenschaft standardmäßig, was bedeutet, dass es ist, erbt Ihren Wert von der übergeordneten Steuerung. Wenn Sie es explizit zu einem bestimmten Wert überschreibt die umgebende Natur und zwingt es zu nutzen, insbesondere-Wert.Den standard-Windows-button-Steuerelement unterstützt keine benutzerdefinierten Farben, so WinForms wird eigentlich Brauch ziehen Sie das Steuerelement zu ermöglichen, den designer zu überschreiben, seine Farbe. So, wenn Sie wollen, um einen hässlichen grünen oder roten Taste, können Sie das tun.
Was hier passiert ist, du hast effektiv eine benutzerdefinierte Hintergrundfarbe für das Steuerelement Schaltfläche (setzen Sie ihn auf die Hintergrundfarbe der 3D-Steuerung, aber es wäre genauso leicht gewesen, Violett), und das ist gezwungen, WinForms, um benutzerdefinierte zeichnen Sie das Steuerelement und malen Sie Ihren hintergrund mit Ihrem gewählten Farbe. Das ist, was gibt es das "flat-Design"—die Hintergrundfarbe wird jetzt bemalt mit einer einzelnen benutzerdefinierten Farbe, anstatt mit dem Standard-Farbverlauf. Es hätte nicht so auffällt, unter "Windows-Klassisch" (pre-Aero) theme, da die Tasten eigentlich wurden gemalt mit der flachen 3D-Steuerung Farbe. Aber Aero Hinzugefügt Verläufe und andere "heiße" Effekte, die macht dieser stick wie ein Wunder Daumen.
Klar den Wert, den Sie eingestellt haben es zu und wiederherstellen Sie die ambient-Art der Immobilie, können Sie mit der rechten Maustaste auf die Eigenschaft im Eigenschaften-Fenster, und wählen Sie "Reset". Sie können es auch tun, durch den code durch festlegen der Eigenschaft auf
default(Color)
:Werden Sie auch brauchen, um die
UseVisualStyleBackColor
- Eigenschaft wieder auftrue
die wird automatisch eingestelltfalse
wenn dieBackColor
- Eigenschaft wird geändert, um die Unterstützung der benutzerdefinierten Hintergrundfarbe.Alternativ können Sie sagen, WinForms zu ignorieren benutzerdefinierte Eigenschaften wie das insgesamt und Fragen, Windows zeichnen Sie das button-Steuerelement. Tun Sie dies, indem Sie die
FlatStyle
EigenschaftFlatStyle.System
.Wieder, diese kann getan werden, entweder im designer oder per code. Dies wird nicht nur verhindern, dass Sie durch eine Veränderung dumme Dinge wie die Hintergrundfarbe, erstellen einer horridly hässlich Kontrolle, aber es wird auch wieder die native Verhalten des Win32-button-Steuerelement auf das WinForms-Anwendung, einschließlich der Aero subtil fade-Effekte auf hover.
Ich habe keine Ahnung, warum das nicht die Standardeinstellung ist. Sollten Sie eine spezielle Anfrage machen, zu hässlich-und nicht-standard-Steuerelemente. Das sollte nicht nur automatisch geschehen. Ich kann nur davon ausgehen, es war ein Zugeständnis an die VB 6 Programmierer, die in der Lage gewesen, alle Arten von hässlichen Steuerelemente für die Jahre.
InformationsquelleAutor der Antwort Cody Gray
Wenn Sie die Standardeinstellung ändern wieder die Farbe, es spiegelt das
UseVisualStyleBackColor
- Eigenschaft auf false.Nur ändern, dass true zurück, und Sie sollten eingestellt werden!
InformationsquelleAutor der Antwort pglynn
Wiederherstellen der Standard-Hintergrundfarbe der Schaltfläche, verwenden;
InformationsquelleAutor der Antwort Muhammad Saqib
Was für mich gearbeitet:
InformationsquelleAutor der Antwort user4854277
Verwenden Sie die
FromKnowColor
Zugriff auf die system-Farben.Es ist wirklich so einfach.
InformationsquelleAutor der Antwort LordPhantom
Wiederherstellen der Standard-hintergrund-und Vordergrund-um eine Schaltfläche zu verwenden:
InformationsquelleAutor der Antwort Ady
Bezogen auf Ihre Frage-Titel, "How to reset to default button BackColor?" , Ich habe mein problem gelöst durch:
Erstellen Sie eine andere Taste, sagen
ButtonFoo
und legen Sie es auf unsichtbar,und Sie können diese Schaltfläche verwenden, um seine Farbe (da es eine default-Farbe) setzen Sie Ihr eine andere Taste Farbe, zum Beispiel,
Dort gehen Sie; die Farbe wird wieder auf den Standard 🙂
InformationsquelleAutor der Antwort Baby
In Winforms die Standard-Farbe ist die Kontrolle. Sie können es aus dem Eigenschaften-Fenster in VS.
PropertyName Hintergrundfarbe und die Farbe, die Sie wollen, ist im System der Farben -> Control
InformationsquelleAutor der Antwort Guy Heylens
InformationsquelleAutor der Antwort AbdEllah Bril