我们有一个部署多个列表和页面的解决方案。当某个功能被激活时,我们不想在“快速启动”菜单上自动为它们创建链接。
结构可能是这样的。
等等。网站集管理员可能会在“活动”和“非活动”链接之间添加另一个链接。当该功能停用时,我不想删除这些项目,但如果再次激活该功能,我不想再次添加导航:)
是否有可以使用的内置 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(使用前将#替换为@)