选择ASP.NET MVC菜单项

前端之家收集整理的这篇文章主要介绍了选择ASP.NET MVC菜单项前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好的新MVC。我早些时候问了 this问题,得到了一个答案,但我想知道是否有一个更简单的解决方案。

说我有一个主页,其中列出了无序列表的菜单。如何在当前选择的菜单项上设置一个css类?

编辑:

当我启动一个新的mvc应用程序时,我正在使用菜单,就像它的设置一样

<ul id="menu">              
   <li><%: Html.ActionLink("Home","Index","Home")%></li>
   <li><%: Html.ActionLink("About","About","Home")%></li>
</ul>

解决方法

Jakub Konecki的答案让我走向正确的方向…这里是我最终掌握的控制器动作:
[ChildActionOnly]
    public ActionResult MainMenu()
    {
        var items = new List<MenuItem>
        {
            new MenuItem{ Text = "Home",Action = "Index",Controller = "Home",Selected=false },new MenuItem{ Text = "My Profile",Controller = "Profile",Selected = false},new MenuItem{ Text = "About",Action = "About",Selected = false }
        };

        string action = ControllerContext.ParentActionViewContext.RouteData.Values["action"].ToString();
        string controller = ControllerContext.ParentActionViewContext.RouteData.Values["controller"].ToString();

        foreach (var item in items)
        {
            if (item.Controller == controller && item.Action == action)
            {
                item.Selected = true;
            }
        }

        return PartialView(items);
    }

希望这有助于某人。

猜你在找的asp.Net相关文章