我想在DataGridView中显示大量数据(超过1,000行和15列)。我使用BindingList作为DataGridView.DataSource。系统地修改BindingList (15s) -删除、修改或添加一些行(不是很多,绝对少于所有行的数量)。
无论是第一次准备和显示DataGridView,还是修改它都不像需要的那样高效。我找到了一个简单的解决方案(以及一些类似的解决方案):
bindingList.RaiseListChangedEvents = false;
// modifying BindingList
bindingList.RaiseListChangedEvents = true;
bindingList.ResetBindings();由于我添加了这些行,DataGridView的构建和刷新速度要快得多。但是这种解决方案有一个不可接受的缺点。刷新列表后,滚动移动到列表顶部,所选内容丢失。有没有什么解决方案,既可以快速修改DataGridView,又可以让滚动停留在以前的位置(更新之前),并且不改变行选择?
发布于 2011-07-29 06:12:33
保存选定的坐标,并在刷新后恢复它们。
https://stackoverflow.com/questions/6866370
复制相似问题