I’m going crazy trying to manipulate the Menu in my site.master. I’ve got the following Menu in my site.master:
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
<Items>
<asp:MenuItem Text="Welcome" Value="0" NavigateUrl="Default.aspx"></asp:MenuItem>
<asp:MenuItem NavigateUrl="Times.aspx" Text="Timesheets" Value="1"></asp:MenuItem>
<asp:MenuItem NavigateUrl="View.aspx" Text="View Staff" Value="2"/>
<asp:MenuItem Text="Add Staff" Value="2" NavigateUrl="Add.aspx"></asp:MenuItem>
<asp:MenuItem Text="Options" Value="3">
<asp:MenuItem Text="Jobs" Value="3" NavigateUrl="Jobx.aspx"></asp:MenuItem>
<asp:MenuItem Text="Courses" Value="3" NavigateUrl="Modx.aspx"></asp:MenuItem>
<asp:MenuItem Text="Increases" Value="3" NavigateUrl="Incx.aspx"></asp:MenuItem>
<asp:MenuItem NavigateUrl="User.aspx" Text="Users" Value="3"></asp:MenuItem>
</asp:MenuItem>
</Items>
</asp:Menu>
And for sake of simplicity, I’ve added and adjusted the following this msdn VB example to my site.master vb file:
Partial Class Site
Inherits System.Web.UI.MasterPage
Public Sub NavigationMenu_MenuItemDataBound(sender As Object, e As System.Web.UI.WebControls.MenuEventArgs) Handles NavigationMenu.MenuItemDataBound
e.Item.Text = "Custom Text"
End Sub
End Class
My understanding is that all of the items within my menu should subsequently have the text “Custom Text”, but it just isn’t happening. Am I missing something painfully obvious?
There is no data source attached to this menu so the menuitemdatabound is never executed.
If you wanted to manipulate the items you could do this in the page_load.