在VS2012里创建SharePoint Ribbon Custom Action

原文地址:Creating SharePoint Ribbon CustomActions
with Visual Studio 2012
 本文由SPFarmer翻译

在SharePoint 2010里,创建一个ribbon custom actions并不是一个愉快的经历。你需要知道内部的XML的操作,以及选择正确CommandUIDefinition
Id的后台的原理。我们的社区有一些工具,比如 CKSDEV 可以帮一些忙。现在我们高兴的看到,有了一个新的Ribbon
Custom Action SharePoint ProjectItem。这个新的SPI
提供了一个简单易用的想到,来引导你创建一个Custom Action。我们来看一下。

首先你需要创建一个新的SharePoint App project。这个并不是在常规的SharePoint 2013 projects里面。在我今天的例子里,我将在list
item的ribbon里添加custom action,作用是返回到default.aspx
页面。当然你可以使用传统的技术,比如添加JavaScript,
传参,以及其它。我今天只是简要介绍一下这个tool怎么用。

在Add New Item
菜单里,你可以看到这个向导。选择 Ribbon Custom Action 然后输入一个名字。

当你点击添加,就进入到了下一步。这里你需要选择,你要应用到苏宿主 Web
还是App Web。记住, App Web
有你的app的所有的内同,宿主web是寄宿你的app的web。 
这个功能的一个用途是,用户点击宿主web的条目时候,可以点击ribbon的action,然后被带到app。

你现在可以绑定custom action
到一个 list template
或者list instance。如果选择宿主Web ,它会提供一个list instance的列表让你选择。否则,如果你选择List
Template, 它会提供你常用的list template的列表让你选择。

在这里例子里,我选择了App Web
,然后是一个list实例。

继续下一步,它会让你定义ribbon上的位置,以及要显示的文字,以及点击之后重定向的目标页面。你可以选择当前project里任何已经存在的ASP.NET
页面。如果你想运行JavaScript
,你需要在向导完成之后编辑XML。

它会列出,这个控件可以被放置的所有的地点:

当你完成的时候,Visual Studio生成了你需要的XML,你可以根据需要修改。然后,在这个时候,你就不能再回到向导了。如果你还想要向导,你不得不删掉这个item,然后重新创建。

现在我们可以运行project,然后打开我们设置action的list,选择一个条目,在ribbon上就看到了这个action。

点击Ribbon Action,
我就被重定向到了我的app home页面。.

我对这个功能感到很兴奋,因为以前做Custom Action总是很艰难,现在做Custom Action就容易多了。这个很重要,因为这是链接宿主web和app
web的关键的方法之一。

Published Dec 11 2012, 11:18 AM by CoreyRoth

Filed under: SharePointVisual
Studio 11
SharePoint 2013Apps

时间: 2024-10-25 17:33:11

在VS2012里创建SharePoint Ribbon Custom Action的相关文章

SharePoint 2010/SharePoint 2013 Custom Action: 基于Site Collection 滚动文字的通知.

应用场景: 有时候我们的站点需要在每个页面实现滚动文字的通知,怎么在不修改Master Page的情况下实现这个功能?我们可以使用Javascript 和 Custom Action 来实现. 创建一个Custom Action.主要使用到 Location = 'ScriptLink' 属性, 该属性可以动态的加载JavaScript 文件链接和代码块到模板页.代码如下: <Elements xmlns="http://schemas.microsoft.com/sharepoint/&

SharePoint 2013 - User Custom Action

1. User Custom Action包含Ribbon和ECB,以及Site Action菜单等: 2. 系统默认ECB的Class为: ms-core-menu-box --> ECB所在的div使用的class ms-core-menu-list --> ECB所在的ul使用的class ms-core-menu-item --> ECB每一条item所在的li使用的class ms-core-menu-link --> ECB每一条item所在的a链接使用的class m

Custom Action : dynamic link library

工具:VS2010, Installshield 2008 实现功能: 创建一个C++ win32 DLL的工程,MSI 工程需要调用这个DLL,并将MSI工程中的两个参数,传递给DLL, 参数1:Property 表中的 ProductName 参数2:操作 MSI 工程的 installer database 的 Handle 对参数1的操作:通过对话框的方式显示出来. 对参数2的操作:读取 Property 表中的 ProductName 属性,通过对话框的方式显示出来. 步骤一.VS20

SharePoint Development - Custom Content Type using Visual Studio 2010 based SharePoint 2010

本文所述均来自之前实际的项目模块 首先再论述一下SharePoint ContentType内容类型 SharePoint的列表和文档库可以储存不同类型的内容就叫做内容类型,比如文档库的文档,调查列表的调查等,都称作是内容类型.内容类型在网站范围内是可用的,不同的内容类型具有不同的内容和设置(如策略,关联的工作流等). 通俗来讲,内容类型可以是文档,可以是文件夹,也可以是字段的集合.创建好后的内容类型可以与列表关联,体现在列表的新建项目上.没有凭空而来的内容类型,任何自定义内容类型都是基于现有类

Dynamics CRM 2015/2016 Web API:Unbound Custom Action 和 Bound Custom Action

今天我们再来看看Bound/Unbound Custom Action吧,什么是Custom Action?不知道的小伙伴们就out了,Dynamics CRM 2013就有了这个功能啦.和WhoAmI这类消息一样,我们都可以通过代码去调用它们,只不过呢,今天我要给大家讲讲怎么用Web API的方式去调用它们. Custom Action也被划分为Bound和Unbound两种类型了,它们的具体含义和之前讲的Function和Action没有区别,唯一的区别就是,这里的Custom Action

创建SharePoint 2010 Timer Job

好久没有写博客了.最近在使用SharePoint 2010中Timer Job的功能,有了一点心得,分享一下. 我个人认为SharePoint Timer Job和Windows Service或者是Schedule很相似,就是enable之后可以定时执行.开发的步骤如下: 1.   在VS中新建一个Class,这个Class继承Microsoft.SharePoint.Administration.SPJobDefinition,实现的代码如下: using System; using Sys

java中如何创建自定义异常Create Custom Exception

9.创建自定义异常 Create Custom Exception  (视频下载) (全部书籍) 马克-to-win:我们可以创建自己的异常:checked或unchecked异常都可以, 规则如前面我们所介绍,反正如果是checked异常,则必须或者throws,或者catch.到底哪个好,各路架构师大神的意见是50对50.见我本章后面的附录.sun公司开始说,checked异常可以使你的系统异常语义表达很清楚.但很多人经过一段时间的实践后,马上表示了异议.checked异常是java独有的,

vs2012 webservice创建

第一步:打开VS2012,新建空项目,注意选择.NET Framework的版本.这里我选择的是.NET Framework 4 新建好项目后,在项目中添加一个WebService项 打开这个文件,我们可以看到,代码如下 [csharp] view plaincopyprint? using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Service

在Qt Creator 和在 vs2012 里添加信号和槽

Qt  的窗口部件通过发射信号(signal)来表明一个用户的动作已经发生了或者是一个状态已经改变了. 如点击一个QPushButton时,按钮会发送一个clicked()信号,信号可以与函数(在qt里称做槽slot)相连接 可以把信号理解为c#里的事件 在vs2012里和在Qt Creator里添加信号和槽不一样,这里把两种环境下怎么添加详细说明一下 1.在vs2012里添加信号和槽 新建一个qt的项目QtDemo 在qtdeom.h里添加槽 private slots: void Btn_O