在 selectManyChoice 中设置选定值

Setting selected values in selectManyChoice

我有一个 af:table,其中一个列中有一个 selectManyChoice 作为过滤器。看起来像这样

<af:column sortProperty="#{bindings.my_list_view.hints.statusId.name}"
           filterable="true" sortable="true" headerText="Status"
           id="column_status">
    <f:facet name="filter">
    <af:selectManyChoice id="smc_status"
                         value="#{vs.filterCriteria.statusId}"
                         valuePassThru="false" autoSubmit="true"
                         contentStyle="width:100px"
                         binding="#{wrapper.filter_status}">
        <af:forEach var="listrow" items="#{ViewData.status_List}">
            <f:selectItem id="si_status_1" itemValue="#{listrow.value}"
                          itemLabel="#{listrow.label}"/>
        </af:forEach>
    </af:selectManyChoice>
</f:facet>
<af:outputText value="#{row.status}" id="output_status"/>

我想在 selectManyChoice 中预选一些值,但是如何在这个下拉列表中预选值?

我正在使用 JDev 11.1.2.3.0

如果您需要更多信息,请告诉我。

您必须在 bean 中创建 RichSelectManyChoice 的绑定,然后创建一个函数来设置默认值。要设置默认值,您需要创建一个列表,添加您想要的内容,然后在 maychoice 中设置值。

ArrayList listVal = new ArrayList(20);
listVal.add(101);
listVal.add(102);
// Set List as value
selectMcBind.setValue(listVal.toArray());
//Refresh Component on page (partial target)
AdfFacesContext.getCurrentInstance().addPartialTarget(selectMcBind);