2010-01-26 6 views
1

Я хочу иметь 2 навигационных меню. Один из них будет «меню верхнего уровня» с 4 вариантами, каждый из которых указывает на индекс отдельного контроллера.asp.net mvc 2 меню между 4 контроллерами

Я хотел бы иметь подменю «Контроллер-уровень» в левой части экрана. Это будет соответствовать ссылкам, относящимся к контроллеру, выбранному в верхнем меню.

Меню «уровень контроллера» не является статическим и нуждается в настройке на основе ролей пользователя.

Верхний уровень является основным. Но как я могу создать второе меню, которое изменится при выборе контроллера сверху?

danke!

ответ

0

Если вы используете MVC 2 RC или MVC Futures, используйте RenderAction.

Создайте контроллер для динамического меню и вызовите RenderAction («действие», «контроллер»). Это вызовет контроллер, и вы можете иметь свою логику в контроллере, чтобы отобразить правильное меню.

+0

спасибо, поэтому я бы назвал RenderAction ("displayMenu1" , «MenuController») от конструктора Controller 1, RenderAction («displayMenu2», MenuController ») от конструктора Controller 2? Где подходящее место для вызова RenderAction()? –

+0

Вы вызываете действие рендеринга там, где хотите действие, которое нужно визуализировать (в представлении). –

+0

Это не похоже на то, что он может идти на главной странице, но я бы не хотел называть «renderaction» для левого меню навигации на каждом single view. –

1

Я работаю над аналогичной ситуацией, когда мне нужно два меню. Была ли «передовая практика» когда-либо разрешаемой здесь? У меня есть необходимость в одном меню слева и динамически созданное меню в виде табуляции вверху в зависимости от того, на какой странице я работаю/вкл.

Пользователь действительно нуждается в возможности добавлять/удалять/скрывать верхние вкладки в зависимости от предпочтений. Мы используем MVC 2, и я не уверен, что панель вкладок принадлежит элементу управления, отдельным видам или тому, что ... а также как заставить их взаимодействовать с моими страницами. (Левый навигатор должен показать, где находится пользователь, и верхняя вкладка должна быть подсвечена на основании выбранной пользователем страницы.

Смежные вопросы