标签:sharepoint
Sharepoint2013的顶部导航是全局的,可以通过多种方式进行设置。比如通过网站设置中的更改外观的顶部导航进行设置。这里介绍一种使用对象模型设置顶部导航。对象层次为 site-veb-navigation-topnavigationbar。
创建一个feature,为该feature添加监听事件。在这里笔者创建的feature是应在site级别的。在receiver写代码如下,事件激活时执行:
<span style="font-size:18px;">publicoverridevoid FeatureActivated(SPFeatureReceiverProperties properties) { SPSite site =properties.Feature.Parent asSPSite; using (SPWeb web = site.RootWeb) { List<SPNavigationNode> notes = newList<SPNavigationNode>(); notes.Add(newSPNavigationNode("北汽研究院知识管理系统", "http://www.baidu.com",true)); SPNavigationNodeCollection navigationNodes = null; navigationNodes =web.Navigation.GlobalNodes; foreach (SPNavigationNode note in navigationNodes) { if (note.Id == 1002) { foreach (SPNavigationNode item in notes) { note.Children.AddAsLast(item); } } } } }</span>
这个问题本来很简单,按照逻辑直接找到顶部导航对象添加就可以了。可是做的时候存在问题对象web.Navigation.TopNavigationBar为空。其实顶部导航的id为1002,换种方法就解决了。关于web.Navigation.TopNavigationBar对象有时为空有时不为空我也不清楚,还请大神指点?
标签:sharepoint
原文地址:http://blog.csdn.net/jielizhao/article/details/39203583