在winforms项目中,我有一个datagridview,它定期添加行。新行必须显示在顶部,因此我们使用
bindingSource.Insert(0,item);
到目前为止,此工作正常。新行添加到表的顶部。现在,用户需要能够暂停更新以检查表,然后再继续更新。所以暂停它,我使用:
bindingSource.RaiseListChangedEvents = false;
要恢复:
bindingSource.RaiseListChangedEvents = true;
bindingSource.ResetBindings(false);
具有所需的效果。该表在暂停时不会更新,并按预期恢复。当它被挂起时,新的行不断被添加到绑定源。
出现问题的方法是单击或重新绘制表格时 - 单元格会更改值。即使RaiseListChangedEvents为false,似乎也会使用表重新绘制绑定数据。我指出了上面的Insert方法,因为如果我使用bindingSource.Add()就不会发生这个问题。
有什么方法吗?