使用后台线程进行工作,然后用Timer计时,每个800ms更新一次TreeView,具体的方法是:
=============================================
trView.BeginUpdate();
trView.Nodes.AddRange(_nodes.ToArray());
trView.EndUpdate();
=============================================
Debug,然后用鼠标拖动界面不停抖动,发现每隔800ms左右界面会卡一下;
把Timer的Interval改为3000,卡的间隔就变成了3s。。
在调用 EndUpdate 方法前,BeginUpdate 方法会阻止控件绘制。这个现象正是控件停止绘制的一个直观的表现。
转载于:https://blog.51cto.com/pzy4447/703633