zoukankan      html  css  js  c++  java
  • 【转载】sharepoint2010 自定义ribbon .

    sharepoint2010 自定义ribbon

    分类: sharepoint2010 307人阅读 评论(1) 收藏 举报

           最近做自定义的list,要求将ribbon中item tab彻底更换成自定义的ribbon,所以查看了一下这方面的资料,做个稍稍的总结。

    sharepoint2010对ribbon的定义在路径:C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/14/TEMPLATE/GLOBAL/XML下,CMDUI.XML就是sharepoint2010 ribbon的定义。ribbon的结构是

    ribbon->tab->group->controls这样的一个层次。

    首先通过vs2010新建一个空的sharepoint工程,然后在新建项中添加一个EmptyElement项,在Elements.xml中添加创建ribbon的相关语句即可。

    向ribbon中添加一个Tab:

    CustomAction定义了ID以及ribbon的target,Location必须是CommandUI.Ribbon,具体的ribbon定义在CommandUIDefinition中,此处是想向

    List的ribbon中添加一个自定义的tab。List的ribbon是一个ContextualGroup,它本身包含两个tab,分别是list和item两个tab,我们的目的就是在此基础上

    添加第三个自定义的tab,所以location定位到Ribbon.ListContextualGroup,_children是其子节点,在子节点中按照CMDUI.XML中的形式定义一个tab,

    然后deploy,创建一个Custom List,我们就可以看到自己定义的tab了。

    向已知tab中添加一个group:

     

    向已知Group中添加一个control

    替换已知group中的一个conrol

    替换和添加不同,我们要精确的定位到要替换对象的Location,比如上面替换New Item这个button,我们的location就定位到它,然后再下面给出替换对象即可。替换Group和Tab类似。

     

    移除一个group

    隐藏对象和替换对象的原理是一样的,只不过我们的替换对象为空,这样就将对象移出掉了。移除Control 和Tab和移出Group类似。


    示例中实现的自定义Button的操作是弹出一个提示框显示“Custom Ribbon”。要想通过js实现一个自定义对象的功能,我们需要在对象的定义中定义一个Command ID,然后在CommandUIHandler中定义它的Action即可。CommandUIHandler中还有一个EnabledScript的属性,它是用来定义对象可用与否的,如果它的值为true,对象可用,false则不可用,我们可以用来定义通过选中Item与否来让对象是否可用

    若想实现更复杂的js,则可以在ribbon所在页面上直接实现,或者通过引用外部的js文件来实现,后者只需添加一句

  • 相关阅读:
    软工实践寒假作业2
    nginx前端代理配置文件
    个人作业——软件工程实践总结&个人技术博客
    个人作业——软件评测
    结对第二次作业——某次疫情统计可视化的实现
    结对第一次—疫情统计可视化(原型设计)
    软件工程实践寒假作业(2/2)
    软工实践寒假作业(1/2)
    毕设11.2
    毕设计划(11.1-11.8)
  • 原文地址:https://www.cnblogs.com/LeeWenjie/p/2177823.html
Copyright © 2011-2022 走看看