【问题标题】:Windows forms - inactive highlight colorWindows 窗体 - 非活动突出显示颜色
【发布时间】:2012-05-12 19:27:09
【问题描述】:
我有一个带有OwnerDraw = true 的ListView 控件。
【问题讨论】:
标签:
c#
winforms
winapi
colors
ui-guidelines
【解决方案1】:
SystemColors.Control 是正确使用的颜色。不幸的是,在SystemColors 中没有预定义的Color 用于使不活动的项目显而易见,但它是可靠的。
您不能依赖SystemColors 的唯一情况是用户显式更改 Windows 中的主题颜色设置。但是,您不应该关心这一点,因为它是一个明确的用户选择,并且您不应该干涉用户的选择。
至于指南,Windows UX 指南没有明确说明用于非活动项目的适当颜色,但强调选择与操作系统一致的颜色,以提供良好的对比度和易读性。
在我不太担心外观和感觉的应用程序中,我使用默认系统颜色,但如果我为自己的应用程序设置主题(例如,看起来像 Visual Studio),我完全避免使用系统颜色并改用网络颜色。
希望这会有所帮助。