-1
私はBeanItemContainerに裏打ちされたグリッドを持っています。列を追加する方法はありますか?私はそれが私に多くの誤りを与えたので、方法を見つけることができませんでした。私は手作業でグリッドに行を追加しました。私は生成されたプロパティまたは素朴なプロパティを運を使わずに追加しようとしました。VaadinグリッドにBean項目コンテナを追加した列を追加する
public final class ExecutionGrid extends Grid {
public ExecutionGrid(String caption) {
super(caption);
}
public ExecutionGrid(String caption, List<Step> steps) {
super(caption);
setSteps(steps);
}
/**
* Add steps to this grid.
*
* @param steps Steps to set. It deletes any previous ones stored.
*/
public void setSteps(List<Step> steps) {
//Clear grid
removeAllColumns();
setHeightByRows(steps.size());
setHeightMode(HeightMode.ROW);
Grid.Column textColumn = addColumn("text", byte[].class);
textColumn.setHeaderCaption("Text");
textColumn.setConverter(new ByteToStringConverter());
Grid.Column expectedResultColumn = addColumn("expectedResult", byte[].class);
expectedResultColumn.setHeaderCaption("Expected Result");
expectedResultColumn.setConverter(new ByteToStringConverter());
Grid.Column notesColumn = addColumn("notes", String.class);
notesColumn.setHeaderCaption("Notes");
Grid.Column resultColumn = addColumn("result", String.class);
resultColumn.setHeaderCaption("Result");
steps.forEach((s) -> {
addRow(s.getText(), s.getExpectedResult(), s.getNotes(), "");
});
}
}
私に何かが不足している場合は不思議です。
私はそれが目的に勝つと思います。テーブルでは、Beanには存在しないカスタム列を追加することができました。 – javydreamercsw