【问题标题】:Sharing a List<String> between two vaadin components在两个 vaadin 组件之间共享 List<String>
【发布时间】:2014-09-02 07:28:18
【问题描述】:

我有一个从List&lt;String&gt; 填充的多行单列表。这个List&lt;String&gt; 是通过一个模态窗口填充的,当这个List&lt;String&gt; 有更新时,表就必须更新。

如何通过 Vaadin 实现这一目标?

任何关于此的指针或示例都会非常有帮助。

谢谢

【问题讨论】:

  • 您可以持有对窗口的引用,添加Window.CloseListener,当窗口关闭时,您检索修改后的列表并更新表格。
  • @Morfic 谢谢,是的,我按照您建议的方式从 Modal 获得价值,但问题在于更新表格。由于某种原因我无法更新它:(
  • 您在标签中提到推送:这一切都是由一个用户在一个会话中完成的吗?
  • @g0c00l.g33k 然后请发布一些代码,以便我们更好地理解场景,或者如果它在 github 或类似网站上,请分享链接

标签: vaadin vaadin7 vaadin-push


【解决方案1】:

您可以为要编辑的字段和要显示的表格使用相同的容器。请务必手动触发刷新 (https://www.vaadin.com/api/com/vaadin/ui/Table.html#refreshRowCache()) 或监听它们 (https://www.vaadin.com/api/com/vaadin/data/Container.ItemSetChangeListener.html)

【讨论】:

  • 你是对的。实际上,OP 应该使用一个容器(例如,在这种情况下为 BeanItemContainer)并为两个表使用相同的容器实例。然后,无需手动更新任一表,因为 Table 组件在内部处理对其底层数据组件的更改。鉴于 OP 不想将两个不同的 UI 实例与 Vaadin Push 同步...
猜你喜欢
  • 2013-09-07
  • 1970-01-01
  • 1970-01-01
  • 2020-09-24
  • 2020-02-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多