【发布时间】:2011-08-05 10:58:26
【问题描述】:
如何在 WinForm 中设置 ListView,以便在选择项目时不突出显示?即没有蓝色背景。
【问题讨论】:
-
用户应该如何告诉她成功选择了一个项目?或者 ListView 有焦点?您可以使用 OwnerDraw = true 来做到这一点,但这对 ListView 来说非常痛苦。最好避免。
如何在 WinForm 中设置 ListView,以便在选择项目时不突出显示?即没有蓝色背景。
【问题讨论】:
ObjectListView -- 一个围绕 .NET ListView 的开源包装器 -- 允许您选择希望所选项目具有的颜色。所以你可以将高亮背景色设置为和ListView一样,改变前景色即可。正如 David H 指出的那样,您将不得不对选定的行做一些不同的事情!
在下图中,所选行的背景较深,文本颜色较浅:
【讨论】:
你在找HideSelection吗?
如果您希望即使在列表视图具有焦点时也不突出显示所选项目,那么这会让用户感到非常困惑,并且需要一些自定义绘画。
【讨论】:
Better ListView 允许您以自定义状态(符合当前 Windows 主题)或完全自定义外观显示每个项目 - 这超出了 HideSelection 属性,它也可用:
还有功能较少的免费Better ListView Express。
【讨论】: