GenerateCell в vaadin

У меня есть таблица, в которой есть столбец combobox, в слушателе valueChange combobox я генерирую другой столбец. Все думают, что все в порядке, и был добавлен второй столбец, но я потерял значение поля со списком, и оно было сброшено. Как я понимаю, функция generateCell запускается два раза. Не могли бы вы помочь мне? Вы можете увидеть мой код ниже:

getTable().addGeneratedColumn("action", new Table.ColumnGenerator() {  
    @Override
    public Object generateCell(Table source, Object itemId, Object columnId) {
        ComboBox comboBox = new ComboBox();    
        comboBox.addListener(new Property.ValueChangeListener() {
            @Override
            public void valueChange(Property.ValueChangeEvent event) {
                taskTable.getTable().addGeneratedColumn("rejectReason", 
                    new Table.ColumnGenerator() {
                        @Override
                        public Object generateCell(final Table source1, final Object itemId1, Object columnId1) {
                            ComboBox comboBox1 = new ComboBox();
                            comboBox1.select((comboBox1.getContainerDataSource()).firstItemId());
                            return comboBox1;
                        }
                    }
                );
            }
        });
        return comboBox;
    }
}); 

0 ответов

Другие вопросы по тегам