【发布时间】:2009-11-25 14:00:33
【问题描述】:
我在 WinForms C# ListView 中有一个小故障(对所有列的排序和过滤器进行了自定义修改,但它也发生在标准 ListView 中)。
我用这个(相当标准的)模式修改 ListView 项目:
BeginUpdate();
// add some items
// remove some other items
Sort();
EndUpdate();
但是,如果我在 ListView 已经滚动时调用此代码,那么我会在实际项目之前得到一些空的(不可选择的)行,以及 2 个滚动条,即使它们不需要。
它看起来像一个图形故障,因为当我滚动列表时,空项目会消失。
以前有人遇到过这个问题吗?
【问题讨论】:
-
这种晦涩难懂的问题需要一个重现项目来缩小可能的原因。远景:EndUpdate() 已经调用了 Sort(),省略你的调用,看看它是否有所作为。
-
已经删除了 Sort(),没有区别。我正在用一个小项目进行测试,但我无法重现这个问题,所以我的代码肯定有问题,但我想检查一下是否有人知道这样的故障,非常感谢
-
11 年过去了,这个错误仍然存在于最新的 .NET 中