如何在 SharePoint 2010 中的 XSLT 列表 Web 部件中隐藏列表功能区?

发布于 2024-09-15 20:09:13 字数 327 浏览 2 评论 0原文

在 SharePoint 2010 中,我在网站上有一个自定义列表“客户端”。在网站的主页上,我添加了一个客户列表 Web 部件。当我在浏览器中访问主页并单击该列表中的任意位置时,它会显示“列表工具”功能区组,其中包含“项目”和“列表”功能区。单击列表时我根本不需要这些丝带。我该如何实现这一目标?我是否应该禁用列表上的单击事件,以便这些功能区不会出现?如何禁用列表中的点击事件?或者单击列表时我应该如何隐藏这些功能区?

基本上我希望它的行为与内容查询 Web 部件相同。在内容查询 Web 部件中,如果单击其中的任意位置,它不会显示任何额外的功能区。我希望列表 Web 部件具有相同的行为。

谢谢 希特什

In SharePoint 2010, I have a custom list "Clients" on a site. On the home page of the site, I have added a Clients List Web Part. When I access the home page in a browser and click anywhere in that list, it displays the "List Tool" ribbon group which has "Items" and "List" ribbons. I do NOT want these ribbons at all when clicking on the list. How do I achieve this? Should I disable the click event on the list so these ribbons do NOT appear? How do I disable the click event on the list? Or What should I do to hide these ribbons when clicking on the list?

Basically I want it to behave same as content query web part. In content query web part, if you click anywhere in it, it doesn't show up any extra ribbons. I want the same behavior with list web part.

Thanks
Hitesh

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

剩一世无双 2024-09-22 20:09:13

一种方法是遵循此博客文章中概述的教程:从功能区中删除操作:SharePoint 2010

最终结果是一个用户控件,您可以将其放置在任何页面上并“修剪”(即隐藏)某些内容功能区的部分:整个选项卡,或功能区上的各个组或按钮。

如果您按照博客中规定的​​解决方案进行操作,则可以在 Page_Load 事件中添加以下行:

SPRibbon ribbon = SPRibbon.GetCurrent(this.Page);
if (ribbon != null) {
  ribbon.TrimById( SPRibbon.ListTabId );
  ribbon.TrimById( SPRibbon.ListItemTabId );
}

其他功能区元素 ID 可以在以下位置找到:

当然,缺点使用此方法的一个原因是您隐藏的特定功能区元素是硬编码在 UserControl 中的。为了解决这个问题,我使用 UserControl 作为基础来创建一个 Web 部件,该部件允许您通过属性定义要隐藏的功能区元素。它工作得很好并且足够通用,可以适用于许多不同的场景。

One approach would be to follow the tutorial outlined in this blog post: Remove actions from the ribbon: SharePoint 2010

The end result is a UserControl that you can place on any page and "trim" (i.e. hide) certain portions of the Ribbon: entire tabs, or individual groups or buttons on the ribbon.

If you follow the prescribed solution from the blog, then you would add the following lines in your Page_Load event:

SPRibbon ribbon = SPRibbon.GetCurrent(this.Page);
if (ribbon != null) {
  ribbon.TrimById( SPRibbon.ListTabId );
  ribbon.TrimById( SPRibbon.ListItemTabId );
}

Additional ribbon element IDs can be found at:

Of course, the downside to using this approach is that the particular ribbon elements you hide are hard-coded in the UserControl. To get around this, I used the UserControl as a basis to create a Web Part that allows you to define which ribbon elements to hide via a property. It works great and is generic enough to be applicable to many different scenarios.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文