CellTable保持TextInputCell旧值

时间:2013-08-14 07:59:41

标签: validation gwt celltable

我使用带有EditTextCell的CellTable

当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 个答案:

答案 0 :(得分:-1)

我对EditTextCell不是很了解,但对于其他小部件,我会捕获ChangeEvent(是否可以捕获它正在使用的单元?)然后如果我不想要用户则调用event.stopPropagation()采取行动发挥作用。