MultiSelectList 多选列表
MultiSelectList - 多选列表
组件在一个垂直滚动的列表中展示预定义的选项。MultiSelectList
支持用户选择或反选一个或多个选项,在点击选项时需要按下 Shift 或 Control 键。
组件的 XML 名称:multiSelectList
。
基本用法
满足下列情况可以使用 MultiSelectList
:
-
用户需要从选项列表中选择一项或多项。
-
选项的数量对与使用 CheckBoxGroup 来说太多了。
-
选项数量有限,且无需输入自定义值。
如需创建连接至数据的 MultiSelectList
,使用 optionsContainer 属性。示例:
<data>
<collection id="brandsDc" class="ui.ex1.entity.Brand">
<fetchPlan extends="_base"/>
<loader id="brandsDl">
<query>
<![CDATA[select e from uiex1_Brand e]]>
</query>
</loader>
</collection>
</data>
<layout>
<multiSelectList id="multiSelectList"
caption="Select brands:"
optionsContainer="brandsDc"/>
</layout>
组件值返回所选择的选项列表。
也可以通过编程的方法设置一些选中的选项,只需将值的列表 java.util.List
传递给 setValue()
方法:
@Autowired
private MultiSelectList<Hobby> hobbyList;
@Subscribe
public void onInit(InitEvent event) {
hobbyList.setValue(Arrays.asList(Hobby.FAMILY, Hobby.COMPUTER));
}
定义选项
可以在 XML 中用 optionsContainer
、optionsEnum
属性配置,或在控制器中用 setOptionsList()
、setOptionsMap()
和 setOptionsEnum()
方法设置选项列表。
详细信息在 SingleSelectList
的 定义选项 章节说明
事件和处理器
如需使用 Jmix Studio 生成处理器的桩代码,需要在界面 XML 描述或者 Jmix UI 层级结构面板选中该组件,然后用 Jmix UI 组件面板的 Handlers 标签页生成。 或者可以使用界面控制器顶部面板的 Generate Handler 按钮。 |
DoubleClickEvent
参阅 DoubleClickEvent。
Validator
参阅 Validator。
MultiSelectList XML 属性
可以使用 Studio 界面设计器的 Jmix UI 组件面板查看和编辑组件的属性。 |
align - caption - captionAsHtml - captionProperty - colspan - contextHelpText - contextHelpTextHtmlEnabled - css - dataContainer - description - descriptionAsHtml - editable - enable - box.expandRatio - height - htmlSanitizerEnabled - icon - id - optionsContainer - optionsEnum - property - required - requiredMessage - responsive - rowspan - stylename - tabIndex - visible - width