如何使 vaadin 网格单元格中的文本换行
How to make text in vaadin Grid cell to wrap
我需要让 Vaadin 8 Grid 单元格文本换行。我试图在 Vaadin 论坛中关注此 link。
https://vaadin.com/forum/thread/16908210/vaadin-8-grid-wrap-long-lines
我的网格仅在每个单元格中包含字符串。
我有一个 StyleGenerator class 这样的:
public class MyGridStyleGenerator<ArrayList> implements StyleGenerator {
public String apply(Object item) {
return ".m-grid-cell-wrapper";
}
}
我正在从 Vaadin 6 转换,所以我仍然使用旧主题 ("../reindeer/legacy-styles.css"
)
在我的 styles.css 文件中,有:
.m-grid-cell-wrapper {
word-wrap: break-word;
white-space: normal;
}
在创建网格的 class 中,我有:
Grid<List<String>> table = new Grid<>("My Test Grid");
//skip setting items code since the cell content shows up fine.
MyGridStyleGenerator style = new MyGridStyleGenerator();
table.setStyleGenerator(style);
table.setBodyRowHeight(35); // more than two lines of text height
我使用 Grid.Column 的 setWidth() 将每个列宽设置为固定值,以便可以在给定的 window.
中显示更多列
问题是当显示 Grid 时,长度超过列宽的文本不会换行。
我错过了什么?
感谢您的任何建议。
顺便说一句,Stack Overflow 中还有一个关于这个主题的问题,答案是使用 label.setStyleName(ValoTheme.LAYOUT_HORIZONTAL_WRAPPING);
我没有 Label 也没有使用 Valo 样式。
控制网格单元格的 CSS class 是 .v-grid-cell,所以我在我的 styles.css 文件中添加了以下内容。
.v-grid-cell {
white-space: normal; }
这导致网格单元格中的文本换行。
我需要让 Vaadin 8 Grid 单元格文本换行。我试图在 Vaadin 论坛中关注此 link。 https://vaadin.com/forum/thread/16908210/vaadin-8-grid-wrap-long-lines
我的网格仅在每个单元格中包含字符串。
我有一个 StyleGenerator class 这样的:
public class MyGridStyleGenerator<ArrayList> implements StyleGenerator {
public String apply(Object item) {
return ".m-grid-cell-wrapper";
}
}
我正在从 Vaadin 6 转换,所以我仍然使用旧主题 ("../reindeer/legacy-styles.css"
)
在我的 styles.css 文件中,有:
.m-grid-cell-wrapper {
word-wrap: break-word;
white-space: normal;
}
在创建网格的 class 中,我有:
Grid<List<String>> table = new Grid<>("My Test Grid");
//skip setting items code since the cell content shows up fine.
MyGridStyleGenerator style = new MyGridStyleGenerator();
table.setStyleGenerator(style);
table.setBodyRowHeight(35); // more than two lines of text height
我使用 Grid.Column 的 setWidth() 将每个列宽设置为固定值,以便可以在给定的 window.
中显示更多列问题是当显示 Grid 时,长度超过列宽的文本不会换行。
我错过了什么?
感谢您的任何建议。
顺便说一句,Stack Overflow 中还有一个关于这个主题的问题,答案是使用 label.setStyleName(ValoTheme.LAYOUT_HORIZONTAL_WRAPPING);
我没有 Label 也没有使用 Valo 样式。
控制网格单元格的 CSS class 是 .v-grid-cell,所以我在我的 styles.css 文件中添加了以下内容。
.v-grid-cell {
white-space: normal; }
这导致网格单元格中的文本换行。