Important Notice - Forums is archived
To simplify things and help our users to be more productive, we have archived the current forum and focus our efforts on helping developers on Stack Overflow. You can post new questions on Stack Overflow or join our Discord channel.

Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.
Grid edit mode, readonly columns
I think the method you are seeking is Grid / Column.setEditable(false). I.e. You need to getColumn("property").setEditable(false).
Yes, but my problem is that I want to true/false columns dynamically during the edit of a row.
ex. on double-click of a certain row(grid edit mode), columns with values < 100 should be editable(false) and others editable(true).
How to do this?
There are couple of alternatives. If you are using the newest Vaadin version, you could listen to com.vaadin.ui.Grid.EditorOpenEvent with Grid.EditorListener. That should be fired when editor opens. And then you could use setEditable() in that event based on the column value. I do not know how good the user experience will be since I haven't done that yet myself. But this is the easy way which you can do fully in server side. Anyway I would try this first.
Am using 7.7.0 due to the widget issue that will be fixed on 7.7.2.
How do you add the EditorListener to the Grid.
Below does not seem to work
Grid.EditorListener el = new Grid.EditorListener(){
@Override
public void editorOpened(Grid.EditorOpenEvent e) {
System.out.println("editorOpened");
}
@Override
public void editorMoved(Grid.EditorMoveEvent e) {
System.out.println("editorMoved");
}
@Override
public void editorClosed(Grid.EditorCloseEvent e) {
System.out.println("editorClosed");
}
};
grid.addListener(Grid.EditorOpenEvent.class, el, Grid.EditorListener.EDITOR_OPEN_METHOD);
grid.addListener(Grid.EditorMoveEvent.class, el, Grid.EditorListener.EDITOR_MOVE_METHOD);
grid.addListener(Grid.EditorCloseEvent.class, el, Grid.EditorListener.EDITOR_CLOSE_METHOD);
Removed widgets and upgraded to 7.7.1, still it does not work.
Tatu Lund: There are couple of alternatives. If you are using the newest Vaadin version, you could listen to com.vaadin.ui.Grid.EditorOpenEvent with Grid.EditorListener. That should be fired when editor opens. And then you could use setEditable() in that event based on the column value. I do not know how good the user experience will be since I haven't done that yet myself. But this is the easy way which you can do fully in server side. Anyway I would try this first.
Hi, did you manage to check this?