vaadin - 编辑网格时是否可以在 GridPro 上的 Vaadin 14 中显示保存/取消按钮

标签 vaadin vaadin-flow vaadin-grid vaadin14

在 Vaadin 8 的网格中,双击 GridPro 中的一行时,您会看到“保存/取消”按钮。在 Vaadin 14 Grid Pro 中,默认情况下似乎没有保存/取消按钮。有没有办法启用它?

这似乎应该是可能的,因为我们有 getEditor().addSaveListener() 等。

作为一个额外的问题,每当我在网格中执行任何操作时,它似乎只调用 addCancelListener()。是否有一个原因?当然,首要问题是是否可以在 GridPro

中显示保存/取消按钮

最佳答案

GridProGrid 添加了另一个编辑功能,它根本没有使用 grid.getEditor()。所以这些不能混用。

GridPro 专为基于单元格的电子表格而设计,例如使用改进的键盘导航进行编辑,因此不存在保存/取消按钮。使用 grid.addEditColumn(..) 方法添加可编辑列,并使用如下所示的内置字段或自定义类型。在这两种情况下,值的保存都在提供的回调中处理。

grid.addEditColumn(Person::getEmail)
        .text((item, newValue) ->
                item.setEmail(newValue))
        .setHeader("Email (editable)");

因此不会发出来自网格编辑器的保存/取消事件。此外,默认情况下此功能不使用 Binder。如果需要,您需要自己使用线夹,请参见 Vaadin's cookbook 中的示例.

Basic Grid 具有内置的基于行的编辑器,它还使用 Binder。有了它,您可以在缓冲模式下使用它的 Binder 和编辑器,例如,在您有编辑/取消按钮的地方添加一个额外的组件列,随您喜欢。 Vaadin's component pages 中有相当不错的代码示例.

总而言之,提供了两种不同的编辑工具,不能混用。

关于vaadin - 编辑网格时是否可以在 GridPro 上的 Vaadin 14 中显示保存/取消按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68567780/

相关文章:

java - 在 vaadin 7 中对每个请求调用一个函数

java - Eclipse Vaadin 设计器 10+ html 模板

java - 为什么我在 Vaadin/SpringBoot 应用程序中使用 @Autowired Repository 会得到 NullPointerException?

Java、Vaadin 8、网格延迟加载

java - 在 vaadin 和 spring 下进行日志记录

java - 使用 OpenID 对 Vaadin 应用程序进行身份验证 - 处理重定向困难

java - Vaadin Webapp 的图标

java - 如何在 Vaadin 14 + Spring Boot 中构建工作 jar 文件?

vaadin - 如何滚动到 Vaadin 网格中当前选定的行?

java - 如何在过滤 vaadin 网格时捕获异常