看见论坛中有人问ListView的虚拟模式是否能使用图标,当时我不知道何为虚拟模式,顿时兴趣大增,查阅各种资料后,现把成果分享一下。
ListView中属性VirtualMode,当把它设置为true时,控件不再使用Collection.Add()这种方式来添加数据,取而代之的是使用RetrieveVirtualItem和CacheVirtualItems两个事件,单独使用RetrieveVirtualItem也可以,CacheVirtualItems这个事件主要是为了方便编程人员操作缓冲集合,其参数CacheVirtualItemsEventArgs有StartIndex和EndIndex两个属性
据说DataGridView这个控件也有虚拟模式,这个我没有做测试。
虚拟模式是专门为使用海量数据编程而设计的,几千条数据感觉不明显。
优势:在虚拟模式下,数据插入的效率成倍增长。

博客探讨了Winform中ListView控件的虚拟模式与普通模式的性能差异。虚拟模式通过RetrieveVirtualItem和CacheVirtualItems事件提高数据插入效率,适用于处理大量数据。然而,它也会增加内存消耗,特别是面对几十万条数据时。文章基于SharpDevelop 4.4和.NET Framework 4.5.1进行测试,并提供了简单的测试代码示例。
最低0.47元/天 解锁文章
1011

被折叠的 条评论
为什么被折叠?



