Listから値を表示するためにIchoicerendererのオーバーライドされたクラスを使用しています( DropDown)。値が "-1"の場合のApache Wicket DropdownChoiceのデフォルト値の問題
cfrListは、Databaseから読み込まれたリストです。タイプ"CfrInfo"のリストです。 CfrInfoには、getCfrSubRule()およびgetCfrShortDesc()メソッドがあります。 問題は、getCfrSubRule()メソッドが-1を返すときのデフォルト値です。 通常の状況では、ページが読み込まれたときに私のドロップダウンに「選択」が選択されているように表示されます。 しかし、私のリストのように「-1」の値を持つとき、それは常に示して「-1」のデフォルト値は、すべてのヘルプはAadvanceに.Thanksを高く評価します
「一つの選択」のinstaedとして....
してください以下のコードを参照してください...
dropDown = new DropDownChoice("subRuleCode",new PropertyModel(
inspectionid,"subRuleInfo"),cfrList,new IChoiceRenderer(){
private static final long serialVersionUID = 1L;
public Object getDisplayValue(Object object)
{
CfrInfo info = (CfrInfo) object;
StringBuffer value = new StringBuffer();
value.append(info.getCfrShortDesc());
value.append("(");
value.append(info.getCfrSubRule());
value.append(")");
return value.toString();
}
public String getIdValue(Object object, int index)
{
if (object instanceof CfrInfo) {
CfrInfo info = (CfrInfo) object;
return info.getCfrSubRule();
}
return (String)object;
}
}
);
コンポーネントがレンダリングされる前に 'subRuleInfo'フィールドには何が入っていますか? – biziclop