Ste*_*ier 4 vaadin vaadin-flow vaadin14
例如,在 Vaadin 8 中,您只需执行以下操作即可按屏幕上显示的顺序获取列的列表。
String columnOrderPreference = ((List<Grid.Column>)grid.getColumns()).stream()
.map(Grid.Column::getId)
.collect(Collectors.joining(VALUE_SEPARATOR));
Run Code Online (Sandbox Code Playgroud)
这特别方便,因为您可以保存该字符串,然后调用:
grid.setColumnOrder(columnOrderPreference.split(VALUE_SEPARATOR));
Run Code Online (Sandbox Code Playgroud)
在 Vaadin 14 中(忽略getId()现在应该使用的getKey()),这不再可能,因为getColumns()列表现在总是按照它们添加的顺序而不是它们的排序顺序返回。您仍然可以调用setColumnOrder(...)(使用不同的参数 - list of grid.getColumnByKey(columnKey)),但我无法弄清楚如何按照显示的顺序获取列列表。
这对于尝试保存用户返回同一页面(使用网格)时设置/更改的列顺序特别有用。
您可以
在网格上收听
。ColumnReorderEvent
Registration addColumnReorderListener(ComponentEventListener<ColumnReorderEvent<T>> listener)
Run Code Online (Sandbox Code Playgroud)
活动举办:
/* Gets the new order of the columns. */
List<Grid.Column<T>> getColumns()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1057 次 |
| 最近记录: |