我将xamdatagrid绑定到list.But,因为列表上有太多的更新GUI卡住了。如何在一段时间后(比如说500 ms)停止这些更新并刷新网格。将使用Reactive extension的节流方法有用吗?
答案 0 :(得分:1)
您可以使用DeferRefresh
推迟绑定更新,直到您对集合进行修改为止:
using (collection.DeferRefresh())
{
// Make changes to the collection
...
}
如果正在实时更新集合,您可以使用计时器定期更新绑定:
private IDisposable _deferral;
private void refreshTimer_Tick(object sender, EventArgs e)
{
if (_deferral != null)
_deferral.Dispose();
_deferral = collection.DeferRefresh();
}