在C#中禁用ListView,但仍显示当前选择

Blo*_*ard 7 .net c# listview winforms

我有一个ListView控件,我试图找出最简单/最好的方法来禁止更改所选行,而不隐藏选定的行.

我知道有一个HideSelection属性,但只有在ListView仍然启用(但没有聚焦)时才有效.即使禁用ListView,我也需要可以查看选择.

我该如何实现呢?

Pet*_*ion 2

您还可以使 ListView 所有者绘制。然后,您可以完全控制项目的外观,无论它们是否被选中,或者 ListView 本身是否启用。DrawListViewItemEventArgs 提供了一种方法来要求 ListView 绘制项目的各个部分,因此您只需绘制您感兴趣的部分。例如,您可以绘制项目的背景,但将其留给 ListView 来绘制文本。