0

我发现了一些问题。

我有从 CListCtrl 扩展的类。当我双击行时,我选择了它。一切都很好,但是如果我对某些列进行排序,我就会遇到问题!

例如:我在第二个位置有一些行。我选择它并对列进行排序,突出显示在第二个位置,但我的项目已移至第 4 行(并且选择移至第 4 行)

我有一种不好的感觉,它可能是一些错误:(

有人看到这样的问题吗?

PS:我不确定我是否必须提供一些代码,因为猜它没关系,但如果需要我会发布它

非常感谢你,对不起我的英语)

4

1 回答 1

0

我只在所有者数据列表视图(LVS_OWNERDATA)中看到过这个问题,所以我猜这里就是这种情况。AFIK 有两种可能的解决方案。首先是自己存储选择状态,然后使用 LVM_SETCALLBACKMASK 让控件知道您将提供选择状态。您还必须响应鼠标单击并更新数据数组。另一种解决方案是在排序之前存储所选项目的列表,取消选择所有项目,进行排序,然后最后使用存储的列表恢复选择。

于 2013-10-31T01:17:36.537 回答