引导菜单添加的项无法到达asp.net代码后面

本文关键字:asp net 代码 菜单 添加 | 更新日期: 2023-09-27 18:14:02

根据连接到我的web应用程序的客户端的级别,我必须显示不同的菜单项,这就是为什么我只是用这个代码添加它们:

if (Convert.ToInt32(Session["Level"]) >= 2)
        {
            MenuItem mi2 = new MenuItem("MenuItem2", "SchoolView.aspx");
            mi2.ToolTip = "tool tip";
            mi2.Selectable = true;
            bootMenu.Items[0].ChildItems.Add(mi2);
        }

我的菜单头包含一个单击事件。对于菜单中已经存在的项目,没有问题,但我后来添加的项目似乎不会影响单击事件。这是我的菜单,也许能帮上忙。

    <asp:Menu ID="bootMenu" 
    runat="server" 
    Orientation="Vertical" 
    StaticDisplayLevels="1"
    StaticEnableDefaultPopOutImage="False"
    OnMenuItemClick="BootMenu_MenuItemClick" 
    MaximumDynamicDisplayLevels="10" 
    EnableViewState="false"
    CssClass="nav navbar-fix-top" 
    DynamicMenuStyle-CssClass="dropdown-menu" 
    IncludeStyleBlock="false" 
    SkipLinkText=""
    RenderingMode="List">

引导菜单添加的项无法到达asp.net代码后面

编辑:好的,我明白了。

让菜单重定向到"欢迎"页面,这个重定向是正确的,似乎使用母版页面做其他事情,然后设计是一个坏主意。


编辑:不!这个东西在IIS服务器上不起作用。

下面所有的都是随机的,没有正确的反应。


嗯…我刚刚发现了一个非常糟糕的方法,但它有效:

MenuItem mi = new MenuItem("Accueil", "Default.aspx", null, "~''?Menu=Default.aspx");

通过使这个菜单项重定向到我的母版页,在标题中有一个字符串变量,我现在可以使用我的母版页请求和重定向:

    if (Request["Menu"] != null)
        {
            Response.Redirect(Request["Menu"]);
        }

现在是我的主页重定向用户,而不是菜单本身…