2011-10-14 14 views
18

Mam formant, który nie ma wyłączonej/włączonej obsługi tekstu, więc muszę go do tego dodać.Jaki jest kolor systemu wyłączonego tekstu?

Pytanie brzmi po prostu tak: Jeśli chcę wybrać odpowiedni kolor systemu, aby kontrolka miała ten sam kolor, co wyłączony tekst jako sąsiednie wyłączone etykiety, jaki kolor systemu powinienem wybrać? Wypróbowałem kilka i żadne nie wydaje się właściwe, są albo trochę za lekkie albo za ciemne.

Innymi słowy, załóżmy, że nieruchomość ForeColor jest obecny, co mam napisać tutaj:

myDefunctLabel.ForeColor = SystemColors.???; 
+1

Czy tekst nie jest wyłączony, ma jakiś efekt cienia, a więc więcej niż jeden kolor? Przynajmniej pamiętam, że tak było w starszych wersjach systemu Windows. – CodesInChaos

+0

Nie mam czegoś takiego tutaj. W każdym razie jest * nieco * lepszy niż stary "domyślny", co oznacza, że ​​wyłączona kontrola nadal będzie wyglądać jak czarna. Będę badał to i testowałem to na kilku innych komputerach, ale zacznę od odpowiedzi Adama, ControlDark. –

+0

Jeśli ColorColors.GrayText nie jest oczekiwanym kolorem, to dlatego, że bieżący motyw zdefiniował go inaczej. Zobacz http://blogs.msdn.com/b/wpf/archive/2010/11/30/systemcolors-reference.aspx – AMissico

Odpowiedz

13

SystemColors.ControlDark wygląda dobrze na ekranie. A to jest od ich wypróbowania. Próbowałem większości innych, a cień jest nie tak.

Ale według dokumentów, GrayText jest tym, czego potrzebujesz. Pamiętaj, że wypróbowałem próbkę w systemie Windows 7 z włączoną obsługą Aero, nie wiem, czy motywy ekranu grają głupio z kolorowaniem tutaj.

+0

Zgadzam się, że 'ControlDark' jest również lepszy niż' GrayText' - w Windows 7 z wyłączonym Aero (Basic theme) – MarkJ

7
+0

Hmm, to oznacza, że ​​jest coś, co go przesłoniło. Kolor ten jest nieco ciemniejszy od pobliskiej etykiety wyłączonej. Ale trzymam się tego i zastanawiam się dlaczego moje etykiety są lżejsze :) –

+0

SystemColors.ControlDark działa dla mnie, próbowałem GrayText i wygląda na off. To nie znaczy, że nie jest to właściwa odpowiedź, tylko że kolorystyka wygląda inaczej. –

+0

ControlDark był bliżej .... hmm .... –

4

System.Drawing.SystemColors.GrayText powinien to być.

Powiązane problemy