我有一个50k项目的数组。我想尽快将所有项目加载到listview控件中。使用循环不是解决方案,因为循环非常慢。
答案 0 :(得分:3)
底层ListView控件具有虚拟模式,这意味着您的应用程序仅将计数传递给控件,然后定期回调以获取有关可见条目的信息。不幸的是,VB6通用控件没有公开这个功能,但你仍然可以使用底层控件。
请参阅此vbVision示例。
答案 1 :(得分:2)
据我所知,没有办法大量加载,但还有其他一些技巧可以让它快一点。一种是防止控制在加载期间更新(重新绘制)。这可以像加载时一样隐藏它。另一种技术是预先加载一大块记录(比如2K),然后使用计时器在后台加载其余的块。
但老实说,我怀疑显示50K项目的网格的用处。这是在一次通过中向用户呈现的太多数据。您是否考虑过重构UI以限制用户一次筛选的数据量。