我尝试阅读此链接 [How to call function on menu item click?
这是在问同样的问题,但是我不明白我应该如何修改我的代码来实现这一目标。 我要实现的是,当用户单击菜单项时,它应该执行同一页面上可用功能的代码。
我的代码在这里
item = new MenuItem();
item.Text = " Chart of Account Master";
item.NavigateUrl = "~/ChartAccount.aspx";
item.ImageUrl = "Subicon.png";
Menu1.Items.Add(item);
我想要实现的是。
item = new MenuItem();
item.Text = " Chart of Account Master";
item.NavigateUrl = myfunction();
item.ImageUrl = "Subicon.png";
Menu1.Items.Add(item);
答案 0 :(得分:0)
您提到的链接并不完全是您想要的。
您必须从菜单中将MenuEventhandler
添加到MenuItemClick
事件中,然后检查MenuEventArgs
中正确的Value
。
菜单:
<asp:Menu ID="Menu1" runat="server" OnMenuItemClick="Menu1_MenuItemClick">
<Items>
<asp:MenuItem Text="First Item" Value="myFirstItemValue" />
</Items>
</asp:Menu>
MenuEventHandler
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
if(e.Item.Value == "newMenuItemValue")
//do stuff;
}
添加菜单项:
MenuItem item = new MenuItem();
item.Text = "new Menu Item";
item.Value = "newMenuItemValue";
Menu1.Items.Add(item);
仅此而已,就可以了。