【问题标题】:vaadin Grid select of a row by index numbervaadin Grid 按索引号选择行
【发布时间】:2021-05-22 10:39:45
【问题描述】:

如何在 vaadin 网格流中按索引以编程方式选择一行?

有没有类似的方法

grid.setSelectedIndex(2); 例如?

谢谢

【问题讨论】:

  • 您使用的是什么类型的 DataProvider?如果您使用的是 setItems 那是 ListDataProvider
  • 嗨 Hawk,是的,我正在使用 setItems。我的目标是显示已经选择了一行。

标签: vaadin vaadin-flow vaadin-grid


【解决方案1】:

在 Vaadin 14 中使用 ListDataProvider 时,这还是比较简单的。

   grid.setItems(..);
   var dataProvider = (ListDataProvider<Bean>) grid.getDataProvider()
   var item = dataProvider.getItems().get(2);
   grid.select(item);

如果您的DataProvider 是惰性的,则需要更多样板代码来形成Query objecht 和dataProvider.fetch(..)Query

Vaadin 17 引入了 DataView Java API 的概念(最新版本现在是 19,20 即将发布)以摆脱样板代码。这增加了一些方便的方法,例如选择索引 2 处的项目。这也适用于惰性数据提供程序。伪代码示例。

var dataView = grid.setItems(..);
var item = dataView.getItem(2);
grid.select(item);

【讨论】:

  • 您能否为 Vaadin 14 提供一些示例,说明如何通过 ItemId 或 row Id 查询在延迟加载网格中选择某些项目?
猜你喜欢
  • 2022-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-17
  • 1970-01-01
  • 2018-05-06
相关资源
最近更新 更多