Обновление источника данных XtraGrid при попытке редактирования

У меня есть XtraGrid с источником данных, установленным в BindingList. Некоторые поля в сетке доступны для редактирования. Проблема в том, что список получает много обновлений для некоторых других полей (не тех, которые я могу редактировать), что приводит к обновлению привязки. Если я был в ячейке частично при редактировании поля, это отбрасывалось, и редактор закрывался.

Есть ли способ сделать так, чтобы ячейка с открытым редактором не обновлялась? Или даже сделать так, чтобы вся эта строка не обновлялась, если мне нужно?


person Community    schedule 22.09.2009    source источник


Ответы (1)


В представлении сетки вы можете вызвать BeginDataUpdate(), чтобы «предотвратить обновление визуальных и внутренних данных», пока не будет вызван EndDataUpdate().

Итак, вы можете сделать что-то вроде этого (события, к которым вы привязываетесь, могут быть не самыми лучшими, но вы поняли идею):

private void gridView1_CellValueChanging(object sender, CellValueChangedEventArgs e)
        {
             gridView1.BeginDataUpdate();
        }

private void gridView1_CellValueChanged(object sender, CellValueChangedEventArgs e)
        {
             gridView1.EndDataUpdate();
        }
person csjohnst    schedule 08.10.2009