【问题标题】:Selecting display field for Vaadin ListBox选择 Vaadin ListBox 的显示字段
【发布时间】:2021-10-19 18:43:48
【问题描述】:

我正在使用来自 MySQL 源的实体列表填充 ListBox。 我不知道如何告诉它使用哪个字段作为其 ID,以及使用哪个字段作为其显示。

对于 ComboBox,我可以使用 setItemLabelGenerator 来告诉它使用哪个字段来显示,但我看不到 ListBox 的等效项。

ListBox<MyEntitySource> entityListBox = new ListBox<MyEntitySource>();
List<MyEntitySource> entitySource = (List<MyEntitySource>) entityRepository.findAll();
entityListBox.setItems(entitySource);

这最终显示为例如: MyEntity{id=1, description=Item 1}

如何告诉它将 ID 保存为字段“id”并将值显示为字段“description”?

【问题讨论】:

  • 对于您不需要处理的实体,ListBox 将返回您的 POJO 项,然后您可以使用所有方法。也可以通过项目本身设置所选项目

标签: java listbox vaadin listboxitem vaadin-flow


【解决方案1】:

您需要为项目应用渲染器,例如:

entityListBox.setRenderer(new TextRenderer<>(entity -> entity.getDescription()));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多