编辑网格时是否可以在 GridPro 上的 Vaadin 14 中显示 save/cancel 按钮
Is it possible to display the save/cancel buttons in Vaadin 14 on GridPro when editing the grid
在 Vaadin 8 的网格中,双击 GridPro
中的一行时,您会看到 Save/Cancel 按钮。在 Vaadin 14 Grid Pro 中,默认情况下似乎没有保存 save/cancel 按钮。有没有办法启用它?
似乎应该可以,因为我们有 getEditor().addSaveListener()
等等
作为一个额外的问题,每当我在网格中执行任何操作时,它似乎只调用 addCancelListener()
。是否有一个原因?当然,首要问题是是否可以在 GridPro
中显示 save/cancel 按钮
GridPro
向 Grid
添加了另一个编辑功能,它根本没有使用 grid.getEditor()
。所以这些不能混用。
GridPro
专为基于单元格的电子表格而设计,例如使用改进的键盘导航进行编辑,因此没有 save/cancel 按钮。使用 grid.addEditColumn(..) 方法并使用如下所示的内置字段或自定义类型添加可编辑列。在这两种情况下,值的保存都在提供的回调中处理。
grid.addEditColumn(Person::getEmail)
.text((item, newValue) ->
item.setEmail(newValue))
.setHeader("Email (editable)");
因此不会发出来自网格编辑器的保存/取消事件。此外,默认情况下此功能不使用 Binder
。如果你需要的话,你需要自己使用wire Binder,参见Vaadin's cookbook.
中的示例
基本 Grid
具有内置的基于行的编辑器,它也使用 Binder
。有了它,您可以在缓冲模式下使用它的活页夹和编辑器,例如,在您有编辑/取消按钮的地方添加一个额外的组件列,随您喜欢。 Vaadin's component pages.
中有相当不错的代码示例
总而言之,提供了两种不同的编辑工具,不能混用。
在 Vaadin 8 的网格中,双击 GridPro
中的一行时,您会看到 Save/Cancel 按钮。在 Vaadin 14 Grid Pro 中,默认情况下似乎没有保存 save/cancel 按钮。有没有办法启用它?
似乎应该可以,因为我们有 getEditor().addSaveListener()
等等
作为一个额外的问题,每当我在网格中执行任何操作时,它似乎只调用 addCancelListener()
。是否有一个原因?当然,首要问题是是否可以在 GridPro
GridPro
向 Grid
添加了另一个编辑功能,它根本没有使用 grid.getEditor()
。所以这些不能混用。
GridPro
专为基于单元格的电子表格而设计,例如使用改进的键盘导航进行编辑,因此没有 save/cancel 按钮。使用 grid.addEditColumn(..) 方法并使用如下所示的内置字段或自定义类型添加可编辑列。在这两种情况下,值的保存都在提供的回调中处理。
grid.addEditColumn(Person::getEmail)
.text((item, newValue) ->
item.setEmail(newValue))
.setHeader("Email (editable)");
因此不会发出来自网格编辑器的保存/取消事件。此外,默认情况下此功能不使用 Binder
。如果你需要的话,你需要自己使用wire Binder,参见Vaadin's cookbook.
基本 Grid
具有内置的基于行的编辑器,它也使用 Binder
。有了它,您可以在缓冲模式下使用它的活页夹和编辑器,例如,在您有编辑/取消按钮的地方添加一个额外的组件列,随您喜欢。 Vaadin's component pages.
总而言之,提供了两种不同的编辑工具,不能混用。