Sorry, in your case this HTML should work better:
<wicket:enclosure child="foo">
<ul >
<li wicket:id="foo">
<span wicket:id="bar">[Content]</span>
</li>
</ul>
</wicket:enclosure>
Then in your MyListView override onConfigure with something like this:
void onConfigure() {
super.onConfigure();
setVisible(getModelObject().size() > 0);
}
On Thu, Jun 8, 2017 at 11:09 AM, Per Newgro <[email protected]> wrote:
> Sorry Ernesto for my bad english. But i can not see how i shall get this
> to work with a panel?
> I use a listview because my item count is configurable. So i can not
> generate a "template panel"
> and put all items in that. But i admit that i didn't understand your
> question completely.
>
> Thanks
> Per
>
> > Gesendet: Donnerstag, 08. Juni 2017 um 10:17 Uhr
> > Von: "Ernesto Reinaldo Barreiro" <[email protected]>
> > An: "[email protected]" <[email protected]>
> > Betreff: Re: ListItem and enclosure problem
> >
> > Why to not put the <ul> thing in a panel?
> >
> > On Thu, Jun 8, 2017 at 9:54 AM, Per Newgro <[email protected]> wrote:
> >
> > > Hello,
> > >
> > > i would like to enclose markup of a list item in wicket:enclosure. The
> > > enclosure is activated based on a child component on list item.
> > > So for i could not find any marker that this is not working. So i need
> to
> > > do something wrong. Any work around would be welcome.
> > >
> > > Thanks for your support
> > > Per
> > >
> > > <code>
> > > WicketApplication.java
> > > public class WicketApplication extends WebApplication
> > > {
> > > /**
> > > * @see org.apache.wicket.Application#getHomePage()
> > > */
> > > @Override
> > > public Class<? extends WebPage> getHomePage()
> > > {
> > > return HomePage.class;
> > > }
> > >
> > > /**
> > > * @see org.apache.wicket.Application#init()
> > > */
> > > @Override
> > > public void init()
> > > {
> > > super.init();
> > > mountPage("encloselistitem", ListViewEnclosurePage.class);
> > > }
> > > }
> > >
> > > ListViewEnclosurePage.class
> > > public class ListViewEnclosurePage extends WebPage {
> > >
> > > public ListViewEnclosurePage() {
> > > add(new MyListView("foo", Arrays.asList("1", "2", "3")));
> > > }
> > >
> > > public static class MyListView extends ListView<String> {
> > >
> > > public MyListView(
> > > String id,
> > > List<? extends String> list) {
> > > super(id, list);
> > > }
> > >
> > > @Override
> > > protected void populateItem(ListItem<String> item) {
> > > Label label = new Label("bar", item.getModel());
> > > item.add(label);
> > > if (item.getIndex() == 1) { // any condition
> > > label.setVisible(false);
> > > }
> > > }
> > > }
> > > }
> > >
> > > ListViewEnclosurePage.html
> > > <!DOCTYPE html>
> > > <html xmlns:wicket="http://wicket.apache.org">
> > > <head>
> > > <meta charset="utf-8" />
> > > <link href='http://fonts.googleapis.
> com/css?family=Yanone+
> > > Kaffeesatz:regular,bold' rel='stylesheet' type='text/css' />
> > > </head>
> > > <body>
> > > <div>
> > > <ul>
> > > <wicket:enclosure child="foo:bar">
> > > <li wicket:id="foo">
> > > <span
> > > wicket:id="bar">[Content]</span>
> > > </li>
> > > </wicket:enclosure>
> > > </ul>
> > > </div>
> > > </body>
> > > </html>
> > > </code>
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [email protected]
> > > For additional commands, e-mail: [email protected]
> > >
> > >
> >
> >
> > --
> > Regards - Ernesto Reinaldo Barreiro
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>