c# - 将侧边栏中的默认选择更改为我的自定义插件
问题描述
我正在为 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);
}
解决方案
添加下面的代码
@{
//page title
ViewBag.Title = "MyPlugin";
//active menu item (system name)
Html.SetActiveMenuItemSystemName("My first plugin");
}
到相应的 Razor 页面。
推荐阅读
- mocking - ts-jest 提供模拟测试和模块的不同实例
- r - 尝试使用 tinytex R 包安装 TinyTeX 时出错“无法联系 mirror.ctan.org,返回主干服务器!”
- c++ - 我们如何使用 Google bazel 运行单个测试
- docusignapi - 使用 Apex Toolkit 的发件人 OAuth 流程
- r - 创建绘图后,从 R 中的绘图中删除轴标签
- ruby-on-rails - 在 Rspec 中测试嵌套类方法
- complexity-theory - 渐近符号:证明 Big Omega、O 和 Theta
- mongodb - MongoDB聚合 - 如何按比率获取百分比值
- php - Google 服务客户端 (PHP) 方法文档如何工作?
- css - 从 ShinyWidgets 更改 AwesomeCheckbox 的边距间距