我有一个 GWT 项目,它将有几个 DataGrids。到目前为止,我已经实现了一个(带有ASyncDataProvider
)并且它工作得很好。但我真的不喜欢所有凌乱的样板代码来指定列。这是一个示例:
//some column
Column<DataRecord, String> dataColumn = new Column<DataRecord, String>(new TextCell()) {
public String getCellStyleNames(Context ctx, DataRecord record) {
//some columns have a style based on the value, calculate style here
}
public String getValue(DataRecord record) {
return record.getProperty();
}
};
dataGrid.addColumn(dataColumn);
dataGrid.setColumnWidth(dataColumn, 25, Unit.PX);
有没有办法减少代码量?想象一个有十几列的表,代码变得非常乏味。网格本身由 UiBinder 呈现,但似乎 UiBinder 无法在 DataGrid 上指定列。
我看过这个: Defining GWT CellTables with UiBinder 但这涉及到使用 HTML Table,但我不想失去 DataGrid 提供的所有功能,所以我不愿意走这条路。
欢迎任何其他建议。