以编程方式创建/维护 SharePoint 快速启动菜单的最佳方法

2024-01-02

我们有一个部署多个列表和页面的解决方案。当某个功能被激活时,我们不想在“快速启动”菜单上自动为它们创建链接。

结构可能是这样的。

  • Customers
    • Active
    • Inactive
  • Sales
    • Quotes
    • Orders

等等。网站集管理员可能会在“活动”和“非活动”链接之间添加另一个链接。当该功能停用时,我不想删除这些项目,但如果再次激活该功能,我不想再次添加导航:)

是否有可以使用的内置 API?我知道 SPWeb.Navigation.QuickLaunch 和 SPNavigationNode(Collection) 结构等。但是还有其他方法吗?

希望你能帮忙:)


您会寻找什么样的其他方式?

    public override void FeatureActivated(SPFeatureReceiverProperties properties)
    {
        SPWeb web = (SPWeb)properties.Feature.Parent; 

    // Check for an existing link to the list.
        SPNavigationNode listNode = web.Navigation.GetNodeByUrl(list.DefaultViewUrl); 

    // No link, so create one.
        if (listNode == null)
        {     
              // Create the node.
              listNode = new SPNavigationNode(list.Title, list.DefaultViewUrl);
              // Add it to Quick Launch.
              web.Navigation.AddToQuickLaunch(listNode, SPQuickLaunchHeading.Lists);
        }
    }

我们已经使用上面的方法一段时间了,效果很好。

如果您可以让我知道您正在尝试完成哪些操作 SPWeb.Navigation 不允许您做的事情,我也许可以提供更多帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式创建/维护 SharePoint 快速启动菜单的最佳方法 的相关文章

随机推荐