Я пытаюсь создать ListView
или Repeater
в Wicket 6
для того, чтобы вывести список элементов, как это:Калитка ListView: не выводить «контейнером»
<div class="header">My first header</div>
<div class="content">My first content</div>
<div class="header">My second header</div>
<div class="content">My second content</div>
<div class="header">My third header</div>
<div class="content">My third content</div>
...
Я пытался использовать ListView как это:
<div wicket:id="listViewItems">
<div class="header" wicket:id="header"></div>
<div class="content" wicket:id="content"></div>
</div>
и заполнить его, как это:
add(new ListView<MyItem>("listViewItems", myListOfItems) {
@Override
protected void populateItem(ListItem<MyItem> item) {
item.add(new Label("header", new PropertyModel(item.getModel(), "header")));
item.add(new Label("content", new PropertyModel(item.getModel(), "content")));
}
});
Th е выход я получаю:
<div>
<div class="header">My first header</div>
<div class="content">My first content</div>
</div>
<div>
<div class="header">My second header</div>
<div class="content">My second content</div>
</div>
<div>
<div class="header">My third header</div>
<div class="content">My third content</div>
</div>
Проблема заключается в следующем: Я не хочу, чтобы эти внешние дивы, которые окутывают каждый заголовок/содержание пара. Я хочу, чтобы список был «плоским», как в примере, который я сделал выше.
Как я могу это достичь?
Вы должны были бы назвать setRenderBodyOnly (истинный) по пунктам в ListView в хотя, вы можете переопределить newItem() для этого. – svenmeier
с использованием 'wicket: container' отлично работал –