Динамически установить NavigateUrl для пункта меню в asp.net c # - PullRequest
4 голосов
/ 07 мая 2011

Я пытаюсь добраться до классического пункта меню навигации с сайта в c #, asp.net.Мое навигационное меню выглядит так:

menu

Как мне перейти в Мой профиль 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;

Пожалуйста, помогите: (

1 Ответ

5 голосов
/ 07 мая 2011

Это должно работать:

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

По умолчанию PathSeparator - это косая черта (/).

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

Если вы не переопределилиэто, то вы также можете использовать путь Account/My Profile

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...