TreeView的BeginUpdate()導致的界面略卡

 使用後臺線程進行工作,然後用Timer計時,每個800ms更新一次TreeView,具體的方法是:

=============================================

trView.BeginUpdate();

trView.Nodes.AddRange(_nodes.ToArray());

trView.EndUpdate();

=============================================

Debug,然後用鼠標拖動界面不停抖動,發現每隔800ms左右界面會卡一下;

把Timer的Interval改爲3000,卡的間隔就變成了3s。。

在調用 EndUpdate 方法前,BeginUpdate 方法會阻止控件繪製。這個現象正是控件停止繪製的一個直觀的表現。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章