在asp.net c中为菜单项动态设置NavigateUrl#

dnu*_*nur 4 c# asp.net web

我尝试从c#,asp.net网站上获取经典的导航菜单项.我的导航菜单如下:

菜单

如何访问"我的个人资料"NavigateURL并进行更改?我试过,但mi就是null:

Menu m = (Menu)Master.FindControl("NavigationMenu");
MenuItem mi = new MenuItem();
mi = m.FindItem("Account,My Profile"); 
mi.NavigateUrl = "~/MyProfile.aspx?userid=" + userid;
Run Code Online (Sandbox Code Playgroud)

请帮忙 :(

Ale*_*Aza 5

这应该工作:

var menu = (Menu)Master.FindControl("NavigationMenu");
var menuItem = menu.FindItem("Account" + menu.PathSeparator + "My Profile");
menuItem.NavigateUrl = "~/MyProfile.aspx?userid=" + 123;
Run Code Online (Sandbox Code Playgroud)

默认PathSeparator值为斜杠标记(/).

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.menu.pathseparator.aspx

如果你没有覆盖它,那么你也可以使用路径 Account/My Profile