首页 > 解决方案 > 将侧边栏中的默认选择更改为我的自定义插件

问题描述

我正在为 Nopcommerce 4.1 创建一个自定义插件以用于学习目的。我复制了默认插件 PickupInStore 并将其更改为我的需要。然后我在侧边栏中添加了一个自定义项目,该项目重定向到我的插件的配置页面并且它可以工作,但是当我单击它时,它不会突出显示新项目,而是配置>运输>取货点中的一个项目。所以我的问题是如何在单击其他内容时突出显示添加的项目。

我在侧边栏中的插件的外观:https ://i.imgur.com/pu6aQhd.png

它打开了什么:https ://i.imgur.com/nsyfsrj.png

我在插件类中使用此方法将插件添加到侧边栏

public void ManageSiteMap(SiteMapNode rootNode)
        {
            var menuItem = new SiteMapNode()
            {
                SystemName = "My first plugin",
                Title = "MyPlugin",
                ControllerName = @"Admin/MyPlugin",
                ActionName = "Configure",
                Visible = true,
                RouteValues = new RouteValueDictionary() { { "area", null } },
                IconClass = "fa fa-magic"
            };
            var pluginNode = rootNode.ChildNodes.FirstOrDefault(x => x.SystemName == menuItem.SystemName);
            if (pluginNode == null)
                rootNode.ChildNodes.Add(menuItem);
            //else
            //    rootNode.ChildNodes.Add(menuItem);
        }

标签: c#visual-studiopluginsnopcommerce-4.1

解决方案


添加下面的代码

   @{
        //page title
        ViewBag.Title = "MyPlugin";
        //active menu item (system name)
        Html.SetActiveMenuItemSystemName("My first plugin");
    }

到相应的 Razor 页面。


推荐阅读