在默认页面中从 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 页面上我没有引用母版页。因此,请确保在所有需要的页面中都引用了母版页。
祝一切顺利!
我在 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 页面上我没有引用母版页。因此,请确保在所有需要的页面中都引用了母版页。
祝一切顺利!