Я хочу использовать системные цвета, когда это возможно. Как выбрать цвета, которые не включены в системные цвета?
Оба класса SystemColors
WPF, SystemColors
класс WinForms и константы COLOR _ *
для Функция API GetSysColor
не содержит цветов, которые можно использовать для предупреждений. Предупреждения обычно красного цвета, но нет гарантии, что они не будут близки к системным цветам, которые использует пользователь.
Я хочу отображать элементы в ListBox с использованием стандартных системных цветов (обычно черный текст на белом фоне для невыделенных элементов, белый на темно-синем для выбранных, белый на светло-сером для выбранных несфокусированных). Когда элемент проблематичен (например, операция, к которой он относится, не удалась), я хочу сделать его текст красным, чтобы привлечь внимание. Использование одного цвета для всех трех случаев (выбранный, выделенный несфокусированный, невыделенный) уже проблематично, потому что мне трудно читать красный текст на светло-сером фоне.
Использование только настраиваемых цветов и, таким образом, избежание проблемы является неприемлемым поведением. Пользователи ожидают, что программы будут соблюдать их настройки.
Как выбрать правильный цвет для предупреждений?