2011-09-28 38 views
1

当控件没有焦点并且选择不隐藏时,是否有任何系统颜色定义了listview项目的背景?如果是这样,我无法找到它。编辑:我认为它是在.Net中列出的MenuBar(或ControlFace或Control),但如果有人可以确认它,那将是很好的选择。列表视图中未激活选定项目的系统颜色?

回答

1

我一直使用SystemColors.Control颜色,它永远不会匹配。

如果使用VisualStyles,你可以尝试自己渲染它:

var vsr = new VisualStyleRenderer(
    VisualStyleElement.ListView.Item.SelectedNotFocus); 
vsr.DrawBackground(e.Graphics, rect); 
+0

不错,我已经知道了VisualStyleRenderer,但从来没有意识到我可以用它来做这个。 – Neverbirth

+0

@Neverbirth一定要检查'Application.RenderWitVisualStyles'以确保它被支持。如果不是,则返回到'SystemColors.Control'。 – LarsTech

+0

我知道它,但感谢(有用)评论。 – Neverbirth