【问题标题】:Best way to programmatically create/maintain SharePoint Quick Launch menu以编程方式创建/维护 SharePoint 快速启动菜单的最佳方式
【发布时间】:2012-02-13 18:57:42
【问题描述】:

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

结构可能是这样的。

  • 客户
    • 活动
    • 无效
  • 销售
    • 行情
    • 订单

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

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

希望你能帮忙:)

【问题讨论】:

    标签: sharepoint sharepoint-2010 navigation


    【解决方案1】:

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

        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 不会让您做的事情,我可能会提供更多帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-30
      • 1970-01-01
      • 2015-01-14
      • 1970-01-01
      • 2020-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多