Jag försöker sätta datasource på en menulist såhär:
PageDataCollection pages = EPiServer.Global.EPDataFactory.GetChildren(MenuRoot, AccessControlList.NoAccess);
MenuListControl.DataSource = pages;
MenuListControl.DataBind();
pages innehåller 3 items innan databind körs men menulistcontrol innehåller 0 items efter att databind har körts?
Jag provade samma kod på en pagelist och det fungerade utmärkt? Måste jag göra på något annat sätt med menulist?
Is there any assignments to the MenuListControl in HTML code (datasource, pagelink, pagelinkproperty)?
Make sure these are not set, and also make sure that no databind happens after MenuListControl.DataBind();
Frank :)
Jag har inte lagt till datasource,pagelink eller pagelinkproperty i HTML koden för MenuListControl och det sker ingen databind efter att jag kört MenuListControl.DataBind();
Vet inte ifall problemet är löst (det var ju ett tag sedan du postade inlägget), men jag fick ett svar från supporten som kan vara lösningen:
"Det som skiljer MenuList från övriga listtyper är att den är byggd för som "underlag" till en annan lista. D.v.s. man matar MenuListan med ett träd och den visar alla sidor på nivå ett (rötterna i grenarna under startsidan). Sedan visas grenarna i sin helhet i en annan lista (med DataSource = MenuList:en)baserat på vilken nod som är vald i MenuList:en.
I korthet: MenuList visar bara de sidor med indent-värdet är 1. Du får alltså gå igenom din PageDataCollection och sätta PageData.Indent = 1 på alla sidor."
//Christer
PageDataCollection pages = EPiServer.Global.EPDataFactory.GetChildren(MenuRoot, AccessControlList.NoAccess); MenuListControl.DataSource = pages; MenuListControl.DataBind();
pages innehåller 3 items innan databind körs men menulistcontrol innehåller 0 items efter att databind har körts? Jag provade samma kod på en pagelist och det fungerade utmärkt? Måste jag göra på något annat sätt med menulist?