有没有一种简单的方法可以在Tapestry PropertyModel下拉列表中添加“选择”选项

时间:2008-11-04 03:04:55

标签: java tapestry

我有一个Tapestry PropertyModel用于性别。现在,下拉列表只显示男性和女性,因为这些是我模型中唯一的值。我想添加一个“选择一个选项”选项。有没有标准的方法来做到这一点,而不必为我的模型添加假值?我也希望它足够聪明,知道如果需要该字段,他们不能将其设置为“选择一个选项”。

2 个答案:

答案 0 :(得分:2)

在Tapestry 5上,您只需设置blankLabel属性。

在Tapestry 4上,更容易将该功能添加到PropertyModel或将其包装在Brian已经提到的LabeledPropertySelectionModel上(您可以在JavaDoc中为您的Tapestry版本查看该类)。

在Tapestry 3上,您必须将该功能添加到模型中,因为版本4中引入了LabeledPropertySelectionModel。

答案 1 :(得分:1)

一种解决方案是使用LabeledPropertySelectionModel来包装真实模型,如:

new LabeledPropertySelectionModel(new GenderModel(), "Choose an Option")

该类的JavaDoc说:

  

装饰一个底层的IPropertySelectionModel,添加一个初始属性。 label属性和初始属性的值是可配置的。