Tapestry Grid
1
参数source是GridDataSource类型的。
一般情况下,source是一个List或者是一个Array,但是也可以是一个Explicit(不懂)。
2
empty参数可以指定当,source.size = 0时显示的内容。。。
3
可以指定初始化的时候按照某一个列来排序。
代码如下:
@InjectComponent private Grid grid; void onSetupRender(){ if (grid.getSortModel().getSortConstraints().isEmpty()) { grid.getSortModel().updateSort("startDate"); } }
4
可以给grid设定样式。一种方式是通过tableClass,另外一种是通过rowClass
代码是这样的:
tml中
<table t:type="grid" t:source="persons" t:rowClass="prop:evenodd.next">[Grid here]</table>
java中
@Property private EvenOdd evenOdd; void setupRender() { persons = personFinderService.findPersons(MAX_RESULTS); evenOdd = new EvenOdd(); }
EvenOdd.java
public class EvenOdd { private boolean even = true; public String getNext() { String result = getCurrent(); even = !even; return result; } public String getCurrent() { return even ? "even" : "odd"; } }
css
table.t-data-grid tbody tr.odd { background-color: #f8f8f8; } table.t-data-grid tbody tr:hover { background-color: #eeeeee; }