在我的應用程序中使用datagridview有一些巨大的延遲。我需要每秒更新一次狀態消息,大約3000行在datagridview中。每秒更新DataGridView
我目前使用更新的代碼是:
private void UpdateProxies()
{
Invoke(new MethodInvoker(
delegate
{
this.dgvProxies.DoubleBuffered(true);
this.dgvProxies.SuspendLayout();
this.dgvProxies.DataSource = null;
this.dgvProxies.DataSource = this.Proxies;
this.dgvProxies.ResumeLayout();
this.dgvProxies.Refresh();
}
));
}
我曾試圖刪除自動調整大小的屬性,並啓用雙緩衝..還是非常 laggy
任何想法如何,我可以加速它的向上?
你可以更新數據源中的對象還是每次都需要銷燬並重新創建它們?如果你可以更新它們,你可以在它們上面使用INotifyPropertyChanged,並且網格會更新它需要的單元而不需要重新綁定到任何東西。與集合本身相同,您可以使用ObservableCollection,並且數據網格應該在需要時處理更改。 – Belmiris 2012-08-16 20:18:40
嘗試只更新用戶可以看到的行。 – LarsTech 2012-08-16 20:19:43