欧非资源网:安全、免费、专业放心的资源下载站! 最新软件|软件分类

您的位置:欧非资源网 > 其他专区 > SharePoint > SharePoint 如何自定义扩展菜单

SharePoint 如何自定义扩展菜单

时间:2019-12-30 13:59作者:admin来源:未知人气:299我要评论(0)

在对SharePoint进行开发或者功能扩展的时候,经常需要对一些默认的菜单进行扩展,以使我们开发的东西更适合SharePoint本身的样式。SharePoint的各种功能菜单,像网站设置、Ribbon、列表里的下拉等等,都是一样原理的,都是XML+JS脚本实现的,如果想实现这些功能,只需要一个XML发布成Feature,并在网站功能启用,即可。

  其实,关于这个并没有什么过多可以说的东西,大家在实践中,渐渐理解了。下面,我就举几个简单的例子,做一下简要说明。

项目结构

  新建一个空白的SharePoint 2013项目,添加一个Feature文件,一个菜单定义的XML文件,如下图。

clip_image001

  XML菜单定义,如下图:

clip_image002

 

例一:扩展wssuc:Welcome控件

扩展前截图:

clip_image003

扩展后截图:

clip_image004

扩展XML:

复制代码
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <CustomAction
     Id="MyTopMenuLink"
     Location="Microsoft.SharePoint.StandardMenu"
     GroupId="PersonalActions"
     Sequence="0"
     Title="博客园-霖雨">
    <UrlAction Url="http://www.cnblogs.com/jianyus"/>
  </CustomAction>
</Elements>
复制代码


例二 扩展SiteAction(网站设置)菜单

扩展前截图

clip_image005

扩展后截图

clip_image006

扩展XML

复制代码
  <CustomAction
     Id="MyTopMenuLink"
     Location="Microsoft.SharePoint.StandardMenu"
     GroupId="SiteActions"
     Sequence="0"
     Title="博客园-霖雨">
    <UrlAction Url="http://www.cnblogs.com/jianyus"/>
  </CustomAction>
复制代码

 

例三 扩展网站设置菜单

扩展后截图

clip_image007

扩展XML

复制代码
  <CustomAction
     Id="MyTopMenuLink"
     Location="Microsoft.SharePoint.SiteSettings"
     GroupId="Customization"
     Sequence="106"
     Title="博客园-霖雨">
    <UrlAction Url="http://www.cnblogs.com/jianyus"/>
  </CustomAction>
复制代码

  网站设置菜单,不仅仅可以通过GroupId设置显示在哪个位置,还可以单独添加一个Group,后面我们会举例说明。

至于GroupId选择哪一个,请参考附后的MSDN文档。

 

例四 扩展文档库Ribbon菜单

扩展后截图

clip_image008

扩展XML

复制代码
  <CustomAction
     Id="MyTopMenuLink"
     Location="Microsoft.SharePoint.StandardMenu"
     GroupId="SettingsMenu"
     RegistrationType="List"
     RegistrationId="101"
     Sequence="0"
     Title="博客园-霖雨">
    <UrlAction Url="http://www.cnblogs.com/jianyus"/>
  </CustomAction>
复制代码

  RegistrationId可以区分是文档库,还是列表库,是TemplateID

 

例五 扩展文档库ECB菜单

扩展后截图

clip_image009

扩展XML

复制代码
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <CustomAction
     Id="MyTopMenuLink"
     Location="EditControlBlock"
     RegistrationType="List"
     RegistrationId="101"
     Sequence="0"
     Title="博客园-霖雨">
    <UrlAction Url="http://www.cnblogs.com/jianyus"/>
  </CustomAction>
</Elements>
复制代码

  如上图,因为Sequence是0,所以这个菜单在最上面,如果想要移动位置,设置这个值即可。

 

例六 扩展网站操作组

扩展后截图

clip_image010

扩展XML

复制代码
  <!-- Custom Action Group -->
  <CustomActionGroup
      Id="CustomActionGroup"
      Description="自定义组"
      Title="我的自定义组"
      Location="Microsoft.SharePoint.SiteSettings"
      Sequence="30" />

  <!-- Custom Action in Custom Action Group -->
  <CustomAction
      Id="CustomAction1"
      Description="自定义操作"
      Title="自定义操作一"
      GroupId="CustomActionGroup"
      Location="Microsoft.SharePoint.SiteSettings"
      Rights="ManageWeb"
      RequireSiteAdministrator="FALSE"
      Sequence="20">
    <UrlAction Url="~sitecollection/_layouts/CustomAction1.aspx" />
  </CustomAction>

  <CustomAction
      Id="CustomAction2"
      Description="自定义操作"
      Title="自定义操作二"
      GroupId="CustomActionGroup"
      Location="Microsoft.SharePoint.SiteSettings"
      Rights="ManageWeb"
      RequireSiteAdministrator="FALSE"
      Sequence="20">
    <UrlAction Url="~sitecollection/_layouts/CustomAction2.aspx" />
  </CustomAction>
复制代码

  如上图,添加了网站操作组,可以用来添加我们的设置。在2013之前版本,类似SiteAction等,都可以进行分组,但是2013我尝试了一下,分组没有成功。而且,之前版本的网站设置,都是菜单分组的形式;新版本默认都没有分组,是否支持还有待进一步研究。

后记

  以上,是几个简单的扩展菜单例子,主要还是修改GroupId和Location来确定菜单的显示位置,通过Rights来限制权限,Sequence来设置排序等,更多的扩展,请参考MSDN自行尝试。

相关阅读 SharePoint中Office文件无法打开的解决方案如何快速生成SharePoint测试大文件如何查询SharePoint Library中空文件夹?如何快速备份SharePoint Farm Solution如何解决Event Viewer中SharePoint Error - Event ID 8321SharePoint 2016 CU安装失败,"Exception: The upgraded database schema doesn't match the TargetSchema"的解决方案InfoPath Error “此文档库已经被重命名或删除,或者网络问题导致文件无法保存…” 的解决方案SharePoint 2013 App概述How to Shrink SharePoint Content Database Log File?Project Web App Feature无法开启的解决方案

文章评论
发表评论

热门文章 SharePoint 2016 图文安装教程 后面有激活序列号、密钥分享[SharePoint入门教程]一SharePoint发展、工具及术语如何用 SharePoint Online创建团队网站?SharePoint Iframe 报错“此内容不能显示在一个框架中”

最新文章 SharePoint中Office文件无法打开的解决方案如何快速生成SharePoint测试大文件 如何查询SharePoint Library中空文件夹?如何快速备份SharePoint Farm Solution如何解决Event Viewer中SharePoint Error - Event ID 8321SharePoint 2016 CU安装失败,"Exception: The upgraded database s

人气排行 SharePoint 2016 图文安装教程 后面有激活序列号、密钥分享[SharePoint入门教程]一SharePoint发展、工具及术语如何用 SharePoint Online创建团队网站?SharePoint Iframe 报错“此内容不能显示在一个框架中”SharePoint 2013 安装图解 SharePoint安装步骤图解教程SharePoint 如何开启访问请求[SharePoint入门教程]一SharePoint概述[SharePoint入门教程]一创建SharePoint母版页

盖楼回复X

(您的评论需要经过审核才能显示)