在默认页面中从 Master class 调用导航菜单

Calling Navigation Menu from Master class in the Default Page

我在 master class 中声明了我的导航菜单。我想在默认页面中使用它,但由于某种原因没有选择它!请注意,菜单项是在 SiteMap 文件中声明的!

这是我要调用的 class 主菜单:

<asp:Menu ID="NavigationSiteMapMenu" runat="server" CssClass="menu" 
        Orientation="Horizontal"  DataSourceID="SiteMapDataSource1">

这是我在默认页面中使用的代码(在页面加载方法中):

        Dim testMenu As Menu = CType(Master.FindControl("NavigationSiteMapMenu"), Menu)

我在这里测试它是否 returns 项目列表但它不是 0。

        Dim test = testMenu.Items

你们知道为什么我上面的代码不起作用吗,逻辑对我来说似乎很完美但显然不是 VB.NET!

这是正确的语法:

  Dim testMenu As Menu = CType(Master.FindControl("NavigationSiteMapMenu"), Menu)

我的问题是在其中一个 aspx 页面上我没有引用母版页。因此,请确保在所有需要的页面中都引用了母版页。

祝一切顺利!