我有一个大约有400行和10列的DataGridView。当用户首次显示此表时,它将从服务器接收所有数据并填充该表。 DGV使用DataTable作为它的数据源,在更新DataTable时我使用row.BeginEdit / EndEdit和acceptChanges,但是当View本身更新时,它会在所有DGV都被更新时滞后一秒钟。我想知道是否有办法使这个顺利,所以例如,如果用户滚动数据并且它更新,它将不会中断滚动。或者,如果用户正在屏幕上移动显示并更新,则不会中断。是否有捷径可寻?如果没有,是否会阻止DGV更新视图,直到所有事件都结束,因此在用户停止滚动,拖动等之前不会重新绘制它?
答案 0 :(得分:0)
过去我发现慢度问题可能与自动调整大小属性有关。以下是一些更多的想法:Quick fixes for slow DataGridView
答案 1 :(得分:0)
我想到的第一个想法是使用BackgroundWorker
。然后,当您的BackgroundWorker
更新时,它不会占用主线程,即您的GUI线程。
答案 2 :(得分:0)
尝试运行调试器/分析器以确定哪个部分是减速的实际原因。一旦你弄清楚哪条线是罪魁祸首就会更容易回答这个问题。