Wicket:在ListView中使用可编辑的内联标签,并在更改此标签值后更新模型

时间:2013-04-09 03:33:22

标签: java scala wicket

我需要在ListView中使用可编辑标签或内联标签,并在更改后使用 这个组件的值我想知道如何更新属性 此listView中显示的对象

add(new ListView[SomeObject]("listSomeObject", listData) {

    override protected def onBeforeRender() {
     ...
      super.onBeforeRender()
    }

    def populateItem(item: ListItem[SomeObject]) = {
      var objValue = item.getModelObject()

      item.add(new Label("total", objValue.toString(getFormatter())))
     }
    }
  })

在上面的代码中,对象SomeObject有一个名为total的属性,即listView 显示一组SomeObject,当标签总数在某些行中更改时 listview对应的对象SomeObject应该用new更新 标签总价值。

有人可以提供一些有用的示例来帮助我完成这项任务吗?

谢谢

1 个答案:

答案 0 :(得分:1)

您应该使用模型来显示您的财产。例如propertyModel。方法getObject()将在显示时被调用。 PropertyModel将为所选属性调用getter。您可以让对象具有一个getter来检索您感兴趣的格式化值。

item.add(new Label("total", new PropertyModel(item.getModel(), "formattedValue")))