排序2个不同的数据网格

时间:2015-03-23 01:53:59

标签: java gwt datagrid

是否可以同步包含类似值列的两个不同数据网格? (我可以将它放在一个数据网格上,但我打算做其他事情。)

也就是说,如果我对datagrid 1进行排序,datagrid 2也会排序。

1 个答案:

答案 0 :(得分:0)

您可以将ColumnSortHandler添加到一个Datagrid。在此处理程序中,您可以调用event.getColumn()以查看已用于排序的列,并使用event.isSortAscending()来获取排序方向。然后,您可以将相应的列推送到另一个Datagrid中的排序列表,并在其上调用sort事件:

tableA.addColumnSortHandler(new ColumnSortEvent.Handler() {

    @Override
    public void onColumnSort(ColumnSortEvent event) {
        Column<MyObject, String> columnA = event.getColumn();
        // find columnB in tableB that corresponds to columnA in tableA
        tableB.getColumnSortList().push(new ColumnSortInfo(columnB, event.isSortAscending()));
        ColumnSortEvent.fire(tableB, tableB.getColumnSortList());
    }
});