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());
Но это тоже не работает.
1 ответ
Я не очень хорошо осведомлен о EditTextCell, но для других виджетов я бы поймал ChangeEvent (возможно ли перехватить его в ячейке, которую вы используете?), А затем вызвал event.stopPropagation(), если я не хочу, чтобы действие пользователя имело любой эффект.