【发布时间】:2011-09-28 16:30:53
【问题描述】:
当控件没有焦点并且选择没有隐藏时,是否有任何系统颜色来定义列表视图项的背景?如果是这样,我找不到它。
编辑:我认为它是 .Net 中作为 MenuBar(或 ControlFace 或 Control)列出的那个,但如果有人能确认它会很好。
【问题讨论】:
当控件没有焦点并且选择没有隐藏时,是否有任何系统颜色来定义列表视图项的背景?如果是这样,我找不到它。
编辑:我认为它是 .Net 中作为 MenuBar(或 ControlFace 或 Control)列出的那个,但如果有人能确认它会很好。
【问题讨论】:
我一直为此使用SystemColors.Control 颜色,而且从来没有不匹配。
如果使用VisualStyles,可以尝试自己渲染:
var vsr = new VisualStyleRenderer(
VisualStyleElement.ListView.Item.SelectedNotFocus);
vsr.DrawBackground(e.Graphics, rect);
【讨论】:
Application.RenderWitVisualStyles 以确保它受支持。如果不是,则回退到SystemColors.Control。