CellTable сохраняет старое значение TextInputCell

Я использую CellTable с EditTextCell

Когда EditTextCell запускает FieldUpdater, я хочу выполнить проверку и установить для EditTextCell старое значение, если проверка не удалась. Но я не могу найти, как обновить CellTable или указанную строку.

Вот кусок кода:

titleColumn.setFieldUpdater(new FieldUpdater<QuestionDto, String>() {

    @Override
    public void update(int index, QuestionDto object, String value) {

           if (!isValid(value)) 
                 // Here I need to set the EditTextCell to the value in my object
           else
                 // It's valid I do the work
       }
});

Я искал что-то вроде: ((EditTextCell)titleColumn.getCell(index)).setValue(object.getTitle());

Другое решение - сбросить все CellTable следующим образом:

table.setRowData(dataProvider.getList());

Но это тоже не работает.


person user2681428    schedule 14.08.2013    source источник


Ответы (1)


Я не очень хорошо разбираюсь в EditTextCell, но для других виджетов я бы поймал ChangeEvent (можно ли поймать его ячейку, которую вы используете?), а затем вызовите event.stopPropagation(), если я не хочу, чтобы действие пользователя имело любой эффект.

person otonglet    schedule 14.08.2013