C# e、 Item.Text返回另一个菜单项的文本

C# e、 Item.Text返回另一个菜单项的文本,c#,asp.net,C#,Asp.net,我在ASP.NET中有一个菜单,如下图所示: 我已经动态创建了该菜单。以下是C#代码: 我使用IsPostBack=false调用Page\u Load事件中的上述GetMenuItems()方法 现在,我有以下几点: protected void Menu1_MenuItemClick(object sender, MenuEventArgs e) { Session["SelectedMenuItemName"] = e.Item.Text; Response.Redire

我在ASP.NET中有一个菜单,如下图所示:

我已经动态创建了该菜单。以下是C#代码:

我使用
IsPostBack=false
调用
Page\u Load
事件中的上述
GetMenuItems()
方法

现在,我有以下几点:

protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
    Session["SelectedMenuItemName"] = e.Item.Text;
    Response.Redirect(e.Item.Value);
}

现在,假设我点击上图所示的鼠标,当我选中
e.Item.Text
时,我得到了“膝上型电脑”,这是同一级别上的第一个项目。以类似的方式,如果我选择“电子”下的任何项目,我会得到
e.Item.Text=“Laptop”
。我也尝试了
Menu1.SelectedItem.Text
,但仍然遇到同样的问题。

我认为问题是MenuItem的Value属性

我的意思是不要将NavigateUrl存储在MenuItem的Value属性中

然后试着运行您的项目,我确信您将在
e.Item.Text
中获得所需的值

不过,如果您有任何问题,请随时在此发表评论

谢谢

protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
    Session["SelectedMenuItemName"] = e.Item.Text;
    Response.Redirect(e.Item.Value);
}