Получение значения цвета текста основной инструкции TaskDialog

#wpf #colors #taskdialog

#wpf #Цвет #taskdialog

Вопрос:

TaskDialog в Windows7 имеет синий текст основной инструкции вверху. Есть ли способ получить этот цвет в качестве значения кисти в WPF?

Комментарии:

1. Как насчет передовых технологий, таких как пипетка в mspaint?

2. @H.B. Обычно это приводит к неправильному значению из-за сглаживания и смешивания.

3. @Josh Einstein: Шрифт довольно крупный, хотя в нем можно найти сплошной пиксель.

4. @H.B. это даст вам только приблизительную оценку цвета в вашей текущей системе. Это будет полностью отличаться от других цветов темы, высококонтрастных тем и т.д. Не кодируйте цвета жестко, но старайтесь по возможности получать их из фреймворка / операционной системы.

Ответ №1:

На самом деле эти цвета определены в Руководстве по взаимодействию с пользователем Windows. Насколько я знаю, они недоступны как именованные системные цвета, но в руководстве явно перечислены цвета RGB и размеры шрифта для различных текстовых элементов.

Ответ №2:

Я писал об этом здесь:http://blog .quppa.net/2011/04/30/windows-theme-fonts /

Короче говоря, нет, в WPF нет поддержки для получения размера шрифта / цвета / и т.д. Частей темы, Но есть в Win32 с функциями GetThemeFont и GetThemeColor. Однако это будет работать только тогда, когда включены визуальные стили, и вам потребуется жестко запрограммировать резервные значения при использовании Windows Classic или высококонтрастных тем. В случае текста «Основной инструкции» следует использовать шрифт подписи (к счастью, это доступно через WPF).

Комментарии:

1. Я опубликовал несколько примеров кода WPF здесь: blog. quppa.net/2011/10/24/windows-theme-fonts-redux-sample-code