0

我使用带有 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());

但这也行不通。

4

1 回答 1

-1

我对 EditTextCell 不是很了解,但是对于其他小部件,我会捕获 ChangeEvent (是否可以捕获您正在使用的单元格?),然后如果我不希望用户操作有,请调用 event.stopPropagation()任何效果。

于 2013-08-14T11:50:32.743 回答