Получение цветов Windows XP в .NET - PullRequest
2 голосов
/ 07 ноября 2008

Я пытаюсь получить определенный цвет, используемый Windows XP в моем приложении .NET.

В Windows XP, если вы переходите на панель управления в «виде по категориям», с левой стороны у вас есть несколько вариантов «См. Также» (Центр обновления Windows, Справка и поддержка, Другие параметры панели управления). Цвет, который я пытаюсь получить - это светло-синий цвет фона, показанный за этими параметрами.

Мне не нужно шестнадцатеричное / RGB-значение цвета, поскольку оно может меняться в зависимости от настроек стиля, используемых на рабочем столе.

Мой вопрос: возможно ли программно получить этот цвет в приложении .NET?

Цвет, по-видимому, отсутствует в SystemColors, хотя он очень похож на SystemColors.InactiveCaptionText (и я думаю, что, вероятно, с этим справлюсь). Мне просто интересно, есть ли способ получить точный цвет.

Ответы [ 2 ]

2 голосов
/ 07 ноября 2008

Спасибо за подсказку Тамберг

Я нашел нужный ответ в System.Windows.Forms.VisualStyles

Я использовал VisualStyleRenderer, чтобы нарисовать нужный мне цвет.

Если кому-то интересно, то цвет, который мне нужен был VisualStyleElement.ExplorerBar.NormalGroupBackground См. Страницу MSDN

1 голос
/ 07 ноября 2008

Быстрое предположение: Google "VisualStyles.dll" и, возможно, есть подсказка в источнике http://www.codeproject.com/KB/miscctrl/ThemedExplorerControls.aspx?display=Print

...