一行的 vaadin Grid select 按索引号
vaadin Grid select of a row by index number
如何在 vaadin 网格流中按索引以编程方式select一行?
有没有像
这样的方法
grid.setSelectedIndex(2);
例如?
谢谢
在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 网格流中按索引以编程方式select一行?
有没有像
这样的方法grid.setSelectedIndex(2);
例如?
谢谢
在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);