以编程方式在Vaadin 7中选择Grid中的一行?

Bas*_*que 1 vaadin vaadin7 vaadin-grid

Vaadin 7.5.3 的Grid小部件中,我们可以通过调用或确定当前的行选择.SelectionEvent::getSelectedGrid::getSelectedRows

那么我们如何以编程方式设置选择呢?

kuk*_*kis 5

虽然Grid类的官方文档没有说明这种方法,但你仍然可以通过编程方式完成.我不会争论这是不是一个错误.首先你需要知道你的是什么SelectionMode.然后你可以选择一行(或多行):

@Override
protected void init(VaadinRequest request) {
    final VerticalLayout layout = new VerticalLayout();
    Customer c = new Customer(1);
    container = new BeanItemContainer<>(Customer.class, Arrays.asList(c, new Customer(2)));
    grid = new Grid(container);
    grid.setSelectionMode(SelectionMode.SINGLE);
    SingleSelectionModel m  = (SingleSelectionModel) grid.getSelectionModel();
    m.select(c);
    layout.addComponents(grid);
    setContent(layout);
}
Run Code Online (Sandbox Code Playgroud)