尝试使用RPC从数据库表中填充特定列时遇到问题。基本上我试图按字母顺序对姓氏列进行排序,但它只是不起作用。表格已完全填充,但排序不起作用。
任何想法为什么?
提前致谢
{{1}}
答案 0 :(得分:0)
将onSuccess方法中的大部分代码移出那里 - 每次加载数据时都没有理由调用它。例如,您可以/应该只设置一次Comparator等等。
告诉您的表用于排序的列:
table.getColumnSortList().push(familyNameColumn);
加载完新数据后,请告诉您的表格对其进行排序:
ColumnSortEvent.fire(table, table.getColumnSortList());
答案 1 :(得分:0)
您正在制作两份数据副本:result
和list
。 list
与dataProvider
:
List<ContactInfo> list = dataProvider.getList();
且listListener
与result
:
ListHandler<ContactInfo> listHandler = new ListHandler<ContactInfo>(result);
所以您要显示list
,但要对result
进行排序。
只需替换
new ListHandler<ContactInfo>(result);
与
new ListHandler<ContactInfo>(list);
它有效。
修改强>
您可以更轻松地将result
传递给ListDataProvider
构造函数:
new ListDataProvider<ContactInfo>(result);
然后,您不需要将值复制到list
,只需执行
new ListHandler<ContactInfo>(dataProvider.getList());