如何从菜单列表中隐藏/删除子菜单项

时间:2013-04-29 21:53:35

标签: c# asp.net

<asp:Menu ID="Menu1" runat="server"  Orientation="Horizontal" StaticSubMenuIndent="10px"
    <asp:MenuItem Text="DashBoard"></asp:MenuItem>
    <asp:MenuItem Text="Project">
        <asp:MenuItem Text="Config Project"></asp:MenuItem>
        <asp:MenuItem Text="Task"></asp:MenuItem>
    </asp:MenuItem>

    <asp:MenuItem Text="Employees">
        <asp:MenuItem  Text="EMS"></asp:MenuItem>
        <asp:MenuItem Text="TimeSheet">
    <asp:MenuItem Text="Period"></asp:MenuItem>
    <asp:MenuItem Text="Report"></asp:MenuItem>
    </asp:MenuItem>
    </asp:MenuItem
</asp:menu>

我是C#的新手。如何在页面加载中隐藏菜单列表中的任务,报表菜单项,考虑到母版页中的此菜单。我尝试搜索类似的问题,但没有得到正确的解决方案!

2 个答案:

答案 0 :(得分:0)

这是一个老问题,但作为参考,这是我使用的解决方案:

var menuItems = NavigationMenu.Items;
var projectMenuItem = menuItems.Cast<MenuItem>().First(p => p.Text == "Project");
var subItem = projectMenuItem.Cast<MenuItem>().First(p => p.Text == "Task");
projectMenuItem.ChildItems.Remove(subItem);

它不漂亮,但它有效。欢迎改进。

答案 1 :(得分:-1)