Ethan Schofer
Ethan Schofer

Reputation: 1848

Menu based on SqlSiteMapProvider needs refresh

In ASP .Net 4.0 Web Forms 'Site' project: I have a Menu on a master page that is populated with SqlSiteMapProvider. It works, but sometimes requires a manual browser refresh to actually appear on screen.

Page Markup:

<div class="clear hideSkiplink">
    <asp:SiteMapDataSource ID="SiteMapSource" runat="server" ShowStartingNode="false" />
    <asp:Menu ID="NavigationMenu"  runat="server" DataSourceID="SiteMapSource" CssClass="menu" EnableViewState="false"     IncludeStyleBlock="false" Orientation="Horizontal">
</asp:Menu>                
</div>

I know the connection and configuration is correct because after hitting refresh everything works fine.

Upvotes: 0

Views: 804

Answers (1)

Aghilas Yakoub
Aghilas Yakoub

Reputation: 28970

Adjust EnableViewState="true" in order to persist without Bind every Load or Post.

Try with

<div class="clear hideSkiplink">
    <asp:SiteMapDataSource ID="SiteMapSource" runat="server" ShowStartingNode="false" />
    <asp:Menu ID="NavigationMenu"  runat="server" DataSourceID="SiteMapSource" 
    CssClass="menu" 

EnableViewState="true"     

    IncludeStyleBlock="false" 
    Orientation="Horizontal">
</asp:Menu>                
</div>

Link : http://msdn.microsoft.com/en-us/library/ms972976.aspx#viewstate_topic5

Upvotes: 1

Related Questions