Vaadin的列表/重复器组件

7
在我的上一个项目中,我使用了BeanItemContainer和一个Table with GeneratedColumns来简单地显示一个自定义组件,显示搜索结果,就像Google一样。 标题、日期、内容以垂直方式显示。虽然很糟糕(table),但它工作了。
现在,我想在新项目中利用Grid组件,实现相同的目标。列将被生成并包含自定义组件。
这个在Grid中会起作用吗?是否有更好的选择,比如可用的列表或重复器组件?有没有单列与自定义组件的示例?
看起来Vaadin不喜欢除简单数据或Button渲染器之外的任何东西。
更新
看起来添加组件不能直接在Grid 7.5+中工作。
另外,Grid单元格只能是固定高度

组件渲染器插件支持单元格组件,但固定高度仍然是一个问题。

示例代码

 public class Result {
      String title;
      Date date;
      URL url;
      String description;
      List<String> tags;

      public Result (){}

 }

BeanItemContainer<Result> resultContainer = fetchResults(searchTerm);

我也使用了一个Lazy Container,为了简单起见使用了beanitem。
然后我有一个RecordResultComponent,它构建了单个记录结果的布局,如下所示:
 Title(link with Url)
 Date
 Description
 tag1 tag2 tag3 ...

2
为什么要使用表格/网格,而不是简单地遍历项目列表,为每个项目创建自定义组件的实例,并将它们添加到垂直布局(或者可能是网格布局)中? - Morfic
我有大量的数据,想要利用容器支持的组件。 - steve
很奇怪的是,表格可以渲染组件,而网格却不能直接实现。我猜你想要显示许多其他列,而不仅仅是组件列。但是,如果您不需要任何表格功能(如排序),您可以使用简单的垂直布局。 - d2k2
您也可以在一定程度上使用FieldGroup绑定来实现类似的效果,但是如果没有看到一些代码,很难想象您究竟想做什么。有没有可能分享一个sscce - Morfic
一个像表格一样的懒加载机制,当用户滚动时会很棒。 - agassner
显示剩余2条评论
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接