Wicket中的复选框出现问题

Wicket中的复选框出现问题,wicket,Wicket,我发现在获取默认情况下使用 添加(新复选框(“选中”,新属性模型(“选中”)).setEnabled(false)) 感谢您的帮助 我的Listview类: ExampleListView(String id, List<Extended> lists, PageParameters params){ protected void populateItem(ListItem<Extended> item) { item.add(new CheckBox("sele

我发现在获取默认情况下使用

添加(新复选框(“选中”,新属性模型(“选中”)).setEnabled(false))

感谢您的帮助

我的Listview类:

ExampleListView(String id, List<Extended> lists, PageParameters params){
protected void populateItem(ListItem<Extended> item)
{
    item.add(new CheckBox("selected",new PropertyModel(this, "checked")).setEnabled(false));
}

             boolean checked= true; 
             public boolean isChecked() { return checked; } 
             public void setChecked(boolean checked) { this.checked = checked; } 
ExampleListView(字符串id、列表、页面参数参数){
受保护的void populateItem(列表项)
{
添加(新复选框(“选中”,新属性模型(“选中”)).setEnabled(false));
}
布尔值选中=真;
公共布尔值已检查(){return checked;}
public void setChecked(boolean checked){this.checked=checked;}
}

我需要选中并禁用该复选框(类似于只读选中复选框)。在其他场景中,我还需要item.add(new复选框(“selected”),newpropertymodel(this,“checked”)

如上面的代码所示,我引入了,选中的布尔值,这在UI中显示了一个选中的复选框,但是选中的计数列表并没有增加

在我的窗体类构造函数中:

  public class ExampleForm{

public ExampleForm(String id, List<Extended> list, PageParameters params){

    add(new ExampleListView("Rows", list,params));

     AjaxButton<Void> button= new AjaxButton<Void>("Button"){

    @Override
    public void onClick(AjaxRequestTarget target) {

        for (Extended extn : list) {

            if (((Extended)extn).isSelected()) {       
                selected.add(extn);      
            }
        }
    };
    }

add(button); 
   }
公共类示例表单{
公共示例表单(字符串id、列表、页面参数参数){
添加(新的ExampleListView(“行”,列表,参数));
AjaxButton按钮=新的AjaxButton(“按钮”){
@凌驾
公共void onClick(AjaxRequestTarget目标){
for(扩展extn:list){
如果((扩展)extn.isSelected()){
选中。添加(extn);
}
}
};
}
添加(按钮);
}
}

我的Html文件:
类文件:
公共类扩展实现可序列化{
选择的私有瞬态布尔值=false;
公选{
返回选中的;
}
已选择公共无效设置(已选择布尔值){
this.selected=selected;
}
}

您选中的模型在所有复选框中都是相同的(使用
PropertyModel
映射到
ExampleListView.checked
),这是出于目的吗?

我不确定我是否真的了解发生了什么,请提供一个更准确的示例说明您的期望。我想说的是,您的检查没有映射到任何模型,并且您在ExampleForm按钮的实现中没有对所选属性执行任何操作。很抱歉,这是一个复制粘贴错误。在ExampleListView.java类中,行应该是->item.add(new CheckBox(“selected”),new PropertyModel(“checked”)).setEnabled(false));我需要选中并禁用该复选框(类似于只读选中复选框)。在其他场景中,我还需要item.add(new复选框(“selected”),newpropertymodel(this,“checked”);在ExampleListView中,我引入了布尔checked=true;public boolean isChecked(){return checked;}public void setChecked(boolean checked){this.checked=checked;}这会在UI中显示一个选中的复选框,但选中的计数列表没有递增。您应该编辑原始问题,修复所有键入错误,并确保代码正确呈现。您的ExampleListView类没有显示,而且构造函数中的参数数量有些混乱。谢谢。我编辑了我的问题。我是wicket的新手,在internet上使用了一些示例,以便在默认情况下显示复选框,并在ExampleListView中添加了checked属性。我使用相同的“Checked”属性在需要时显示默认检查。
my Html file :

            <input class="simpleLink" wicket:id="selected" type="checkbox"/>

Class file:

    public class Extended  implements Serializable {

                private transient boolean selected = false;

                public boolean isSelected() {
                    return selected;
                }



                public void setSelected (Boolean selected) {
                    this. selected = selected;
                }
            }