我有一个 XtraGrid,其数据源设置为 BindingList。网格中的某些字段是可编辑的。问题是该列表对其他一些字段(不是我可以编辑的字段)进行了大量更新,这导致绑定刷新。如果我在编辑字段的过程中处于单元格中,这将被丢弃并且编辑器关闭。
有没有办法让编辑器打开的单元格不被刷新?或者如果我必须让整行不刷新?
我有一个 XtraGrid,其数据源设置为 BindingList。网格中的某些字段是可编辑的。问题是该列表对其他一些字段(不是我可以编辑的字段)进行了大量更新,这导致绑定刷新。如果我在编辑字段的过程中处于单元格中,这将被丢弃并且编辑器关闭。
有没有办法让编辑器打开的单元格不被刷新?或者如果我必须让整行不刷新?
在网格视图上,您可以调用 BeginDataUpdate() 来“防止视觉和内部数据更新”,直到调用 EndDataUpdate()。
所以你可以做这样的事情(你附加的事件可能不是最好的,但你明白了):
private void gridView1_CellValueChanging(object sender, CellValueChangedEventArgs e)
{
gridView1.BeginDataUpdate();
}
private void gridView1_CellValueChanged(object sender, CellValueChangedEventArgs e)
{
gridView1.EndDataUpdate();
}