SharePoint 2010 移除Ribbon菜单中的命令项
2011-09-19 14:58 四毛的家 阅读(445) 评论(0) 编辑 收藏 举报提起Ribbon菜单,自认为是一项伟大的功能。Sharepoint 2010 的菜单也采用了这样的形式,如下图:
你可以在里面添加自己的命令项,也可以删除已有的命令项。关于添加Ribbon命令项请参考:http://www.cnblogs.com/chendianhong/archive/2010/07/26/1785209.html
本文介绍如果移除Sharepoint 2010 Ribbon菜单中的命令项,如上图中的加粗,倾斜,下划线。
操作环境:Windows Server 2008 R2 + SharePoint 2010
1.以管理员身份打开vs2010,创建一个空的SharePoint 项目,名字命名为:SPR.Utilities
其他省略
2.在解决方案资源管理器中,右击项目,选择添加SharePoint 映射文件夹
展开TEMPLATE节点,选择CONTROLTEMPLATES 然后单击确定按钮。为了便于管理,我们右击CONTROLTEMPLATES 选择添加--->新建文件夹,名字叫SPR.Utilities 。
3.我们在新建的文件中添加一个ascx文件
右击新建的SPR.Utilities 文件,选择添加---新建项,然后选择用户控件,将其命名为:RibbonItemHider.ascx。打开上面创建好的ascx文件,在Page_Load里写如下代码:
SPRibbon ribbon = SPRibbon.GetCurrent(this.Page);
if (ribbon != null)
{
ribbon.TrimById("Ribbon.EditingTools.CPEditTab.Font.Bold");//加粗
ribbon.TrimById("Ribbon.EditingTools.CPEditTab.Font.Italics");//倾斜
ribbon.TrimById("Ribbon.EditingTools.CPEditTab.Font.Underline");//下划线
}
注意:
添加下面dll引用:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI\Microsoft.Web.CommandUI.dll
然后引入命名空间:using Microsoft.SharePoint.WebControls;
4.右击项目名,选择部署
5.添加到母版页中
5.1 用SharePoint Designer 2010 打开上面部署ascx的站点,找到母版页,默认应该是v4.master。右击它,选择在高级模式下编辑文件,在页面顶部添加如下代码:
<%@ Register TagPrefix="SPR" TagName="RibbonItemHider" src="~/_controltemplates/SPR.Utilities/RibbonItemHider.ascx" %>
5.2 在<body>标签下面写如下代码:
<SPR:RibbonItemHider id="RibbonItemHider" runat="server" />
6.保存母版页,打开站点,添加一个内容编辑web部件,这样加粗,倾斜,下划线命令就不见了。本文第一张图
说明:1.注意SPRibbon类及其TrimById方法的使用。
原文地址:http://sharepointroot.com/2010/06/18/remove-actions-from-the-ribbon-sharepoint-2010/
2.原作者在一篇中介绍的内容,因篇幅太长,我会分作两篇。本文主要介绍如果隐藏命令项,下一篇将会介绍如何找到命令项对应的ID。
链接:http://blog.csdn.net/sygwin_net/article/details/6790139
3.注意TrimById只是动态隐藏,不会删除,当你将其注释后,重新部署,那么想过命令项会再显示。
4.如果你传入的是命令项ID,那么TrimById会隐藏该命令项。但是如果你要传入的是命令项所在的组,比如Ribbon.EditingTools.CPEditTab.Font,结果会怎么样呢?没错,会把整个组都隐藏掉的。