前面我们实现了向用户自定义的Tab中添加新的Group,并向其中创建了两个Button按钮。这里我们看看如何向这个已经创建好的Group中再另外添加新的Button控件(当然,你可以添加其它控件,实现思路是一样的)。


   下面 直接进入操作步骤  
    一、创建新的SharePoint 项目
    要添加新的控件到Ribbon中,应首先创建一个空白 SharePoint 项目。如下:

把此方案设置成Farm解决方案
    然后在此项目中分别加入新的Feature与新的空白Element如下图

二、使用自定义操作中的功能区 XML 定义功能区自定义Button项
    方法是 打开 CustomRibbonButton下的Elements.xml 文件,其内容如下:

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <CustomAction
      Id="Ribbon.CustomTabExample.CutomImgGroup.AddButton"
      Location="CommandUI.Ribbon"
      RegistrationId="101"
      RegistrationType="List"
      Title="Add a Ribbon Button">
        <CommandUIExtension>
            <CommandUIDefinitions>
                <CommandUIDefinition
                  Location="Ribbon.CustomTabExample.CutomImgGroup.Controls._children">
                    <Button Id="Ribbon.CustomTabExample.CutomImgGroup.NewImgRibbonButton"
                      Command="CustomTabExample.NewRibbonImgButtonCommand"
                        LabelText="Hello,New Img Group Button"
                            Description="Says Hello,New ImgGroup Button!"
                            TemplateAlias="cust4"
                            Sequence="15"  />                    
                </CommandUIDefinition>
            </CommandUIDefinitions>
            <CommandUIHandlers>
                <CommandUIHandler
                  Command="CustomTabExample.NewRibbonImgButtonCommand"
                  CommandAction="javascript:alert('Hello,New Added Img Button world');" />
            </CommandUIHandlers>
        </CommandUIExtension>
    </CustomAction>
</Elements>

下面对其内容作如下说明: 
   首先我们要用上一篇介绍的确定Location的方法找到我们需要添加的Button应该添加在Ribbon的哪个位置。

本例我们确定的位置就是Ribbon.CustomTabExample.CutomImgGroup  (格式是: [Ribbon].[Tab].[目标Group的名字].Controls._children),所以此处,Location就是:Location="Ribbon.CustomTabExample.CutomImgGroup.Controls._children"
新的Button的ID就成了Ribbon.CustomTabExample.CutomImgGroup.NewImgRibbonButton。

三、部署自定义Group项
     按 F5。Visual Studio 2010 中的 SharePoint 开发工具将自动构建和部署功能。
     转到网站或子网站中的文档库。
    单击“My Custom Tab”选项卡,查看“自定义组”,然后单击新添加的那个Buttonr按钮Hello,New Img Group Button,效果如下图

--

Sharepoint学习笔记—Ribbon系列-- 5. 在Ribbon中添加新控件(针对用户自定义Tab)相关推荐

  1. itext7学习笔记杂谈系列2——在itext7中添加中文(其他字体)和字体相关事

    作者:CuteXiaoKe 微信公众号:CuteXiaoKe 在本章,我们会讨论如何在itext7中显示中文,或者其他CJK(Chinese/Japan/Koera)等非ASCII码字符遇到的问题,解 ...

  2. Sharepoint学习笔记—架构系列

     为便于查阅,这里整理并列出了我的Sharepoint学习笔记中涉及架构方面的有关文章,有些内容可能会在以后更新. Sharepoin学习笔记-架构系列--  Sharepoint的网页(Page), ...

  3. Sharepoint学习笔记 –架构系列—Sharepoint的客户端对象模型(Client Object Model)

    前面过了一下Sharepoint的服务器端对象模型,接下来就让我们大致看看Sharepoint的客户端对象模型(Client Object Model: Client OM). 首先需要了解的就是Sh ...

  4. Sharepoint学习笔记 –架构系列—12 Sharepoint的客户端对象模型(Client Object Model)

    前面过了一下Sharepoint的服务器端对象模型,接下来就让我们大致看看Sharepoint的客户端对象模型(Client Object Model: Client OM). 首先需要了解的就是Sh ...

  5. Sharepoint学习笔记—ECM系列--文档集(Document Set)的实现

    文档集是 SharePoint Server 2010 中的一项新功能,它使组织能够管理单个可交付文档或工作产品(可包含多个文档或文件).文档集是特殊类型的文件夹,它合并了唯一的文档集属性以及文件夹和 ...

  6. Sharepoint学习笔记 –架构系列—11 Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构

    前面我们看了一下Sharepoint服务器对象模型的物理对象层次(Physical Objects Hierarchy)和对象内容层次(Content Hierarchy)中的相关类,这里来看看服务层 ...

  7. Sharepoint学习笔记 –架构系列—10 Sharepoint的服务器端对象模型(Server Object Model) 2.内容层次结构

    Sharepoint的内容层次结构(Content Hierarchy)包括表示可发布数据项(publishable items),如列表项的类,还包括表示嵌套的数据容器(nested contain ...

  8. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q40-Q44)

    Question 40 You need to send a single value from a consumer Web Part to a provider Web Part. Which i ...

  9. Sharepoint学习笔记—ECM系列--4 根据位置设置的默认元数据值(Location-Based Metadata Defaults)

    如果有这样一个需求:客户在一个SharePoint 2010的站点的document library中创建了不同的文件夹FolderA和FolderB,对于上传到此文件夹的文件记录中有某一个列Colu ...

最新文章

  1. 2021年春季学期-信号与系统-第七次作业参考答案-MATLAB实验题
  2. 关于STM32中CAN1_RX0_IRQn和CAN1_RX1_IRQn的使用
  3. 4、(日期和时间类型)DTAETIME、TIMESTAMP、DATE、TIME、YEAR
  4. linux-shell命令之chmod(change mode)【更改权限】
  5. appimage文件怎么安装_bauh:在一个界面中管理 Snap、Flatpak 和 AppImage | Linux 中国...
  6. .NET Core + K8S + Loki 玩转日志聚合
  7. 数据仓库建设中的数据建模方法(转)
  8. 暑期训练日志----2018.8.26
  9. CSDNmarkdown编辑器报错KaTeX parse error: \cr valid……
  10. Unknown entity (Hibernate的findById方法参数必须加上包名)
  11. Android开发笔记(一百五十一)WebView与JavaScript交互的四种形式
  12. Linux实时监控日志文件的swatchdog
  13. java 文件下载 组件_java文件夹上传下载组件
  14. SQL Server里面如何检查没有释放的游标
  15. 实验四------实验十二
  16. 百度文库免费下载最新攻略,全新的百度文库下载方式
  17. 近世代数--陪集--拉格朗日定理|G|=|H|·[G:H],传递性[G:H][H:K]=[G:K]
  18. python之简易飞机大战
  19. 10分钟 实现图片懒惰加载
  20. CSS精灵优化Retina显示屏下的网站图像

热门文章

  1. 垃圾回收算法与实现系列-JVM无锁实现
  2. 优秀软件架构师成长之路
  3. Docker容器的单进程模型
  4. 关于Gossip协议的几个问题
  5. golang解析IP到城市jsonRPC服务教程
  6. 时间格式转换y-m-d
  7. Jquery 插件集合
  8. ABP源码分析二十五:EventBus
  9. Eclipse和Notepad++快捷键
  10. mysql 错误收集和整理