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,结果会怎么样呢?没错,会把整个组都隐藏掉的。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)