2

我基于 GWT 展示中的 DataGrid 创建了一个使用 GWT 2.5 的 DataGrid。与那里的主要区别在于,我需要子行中的可编辑单元格。

在上面的代码中将子行的 TableBuilder 从 TextCell 更改为 EditTextCell 时,这样的编辑工作正常。

但这有问题,我看不出它们来自哪里以及如何解决:
- 单击子行中的单元格时,编辑会正确开始,但会显示根行中单元格的值 - 编辑后,新值显示在根行中的单元格中。编辑单元格中的值与编辑前相同。

在这里,您可以从上面的示例代码中看到问题,只是使子行中的单元格可编辑。

查看此列的 FieldUpdater 时,我发现始终只提供根行作为参数,即使在编辑子行时也是如此。子行信息在内部上下文中正确找到,但未提供给我的处理程序。

覆盖 Column 并将子行提供回 FieldUpdater 显示了一个不同的问题:从已编辑单元格到根的所有单元格都显示新值。隐藏和显示朋友时,值是正确的 -如此处所示

我显然在这里错过了一些关于 DataGrid 渲染如何工作的内容。有人可以在这里帮助我吗?

欢迎任何帮助,迈克尔

4

1 回答 1

0

解决方案是创建自己的 Column,并覆盖 onBrowserEvent() 或将相应的数据对象存储在其中。

于 2012-12-11T06:48:05.773 回答