1

我有一个列表视图,当列表中的项目被修改并且列表中有选定的项目时,它会绘制一条额外的黑线。代码遍历列表并使用以下代码行更新单元格:

ListView_SetItem(m_hListCtrl, &lvItem);

使用 ListView_InsertItem 宏添加其他行。

如果添加了一行并且选择了其他行,则会发生以下情况:

带有黑线的 ListView

如果用户选择不同的行,该行将消失。如何防止/消除这条黑线?

4

1 回答 1

3

LVS_EX_GRIDLINES风格有许多与之相关的错误,微软从未费心修复,这就是其中之一。解决方法是在您进行触发问题的特定更改时强制重绘列表项。您可以使用消息重新绘制一系列列表项LVM_REDRAWITEMS,或者更简单地使用重新绘制整个控件InvalidateRect()

于 2013-09-16T10:28:34.117 回答