如何以编程方式生成质数PickList组件?

问题描述 投票:0回答:2
public void populateForm(ComponentSystemEvent event) {
    HtmlForm form = (HtmlForm) event.getComponent();

    List<String> citiesSource = new ArrayList<String>();
    List<String> citiesTarget = new ArrayList<String>();
    citiesSource.add("San Francisco");
    citiesSource.add("London");
    citiesSource.add("Paris");
    citiesSource.add("Istanbul");
    citiesSource.add("Berlin");
    citiesSource.add("Barcelona");
    citiesSource.add("Rome");

    cities = new DualListModel<String>(citiesSource, citiesTarget);

    PickList pickList = new PickList();
    pickList.setId("pickList");
    pickList.setValue(cities);
    pickList.setVar("cities");
    pickList.setItemLabel(pickList.getVar());
    pickList.setItemValue(cities);

     form.getChildren().add(pickList);

}

这是我的方法,得到的输出是:

但是如果我在xhtml中添加<p:pickList id="pickList" value="#{bean.cities}" var="cities" itemLabel="#{cities}" itemValue="#{cities}" />,则会得到以下输出:

这里发生了什么?

任何人都可以引导我进行此操作吗?

jsf primefaces
2个回答
0
投票

这是我解决PickList问题的方法:


0
投票

代替PickList pickList = new PickList();尝试此:

© www.soinside.com 2019 - 2024. All rights reserved.