SharePoint 2013 开发——开发自定义操作APP

简介: 博客地址:http://blog.csdn.net/FoxDave自定义操作即我们所说的Ribbon和ECB(Edit Control Block),在SharePoint 2013之前,我们可以通过在解决方案中添加XML元素来实现创建自定义Ribbon和ECB,到了2013时代,利用APP也可以做类似的事情了,接下来我们看看如何利用APP来创建列表条目的自定义操作。

自定义操作即我们所说的Ribbon和ECB(Edit Control Block),在SharePoint 2013之前,我们可以通过在解决方案中添加XML元素来实现创建自定义Ribbon和ECB,到了2013时代,利用APP也可以做类似的事情了,接下来我们看看如何利用APP来创建列表条目的自定义操作。

除了一些细节上的配置项,创建SharePoint APP项目跟之前提到的基本一样。列表条目信息通过查询字符串传递到外部的托管页面。

首先创建一个SharePoint APP项目,名字就叫做CustomActionAPPTest。

接下来我们在Web项目中添加一个新的窗体,名字就叫做CustomActionTarget.aspx。

在页面的空DIV元素下添加一个服务器端控件:

<asp:Literal ID="Literal1"
                runat="server"
                Text="Hello to the world from a custom action app">
            </asp:Literal>

在后台CS代码页面的Page_Load方法中添加如下代码:

Literal1.Text = string.Empty;
            foreach (string queryStringParam in Request.QueryString)
            {
                Literal1.Text = Literal1.Text + "<br>" + queryStringParam +
                " = " + Request.QueryString[queryStringParam];
            }

操作完成之后如下图所示:

下面我们通过SharePoint APP项目添加自定义操作。右键点击项目节点,选择添加->新建项,选择菜单项自定义操作,名字取作MenuItemCustomActionTest,点击下一步弹出向导。

如上选择之后点击下一步,定义菜单项的文本和导航的目标页面,为文本指定一个值,选择我们之前创建的Web窗体,点击完成按钮完成创建。

我们再来创建一个自定义Ribbon。右键点击项目节点,选择添加->新建项,选择功能区自定义操作,名字取作RibbonCustomActionTest,点击下一步弹出向导。

第一个部分选择同上,点击下一步,定义Ribbon所在的位置为Ribbon.Documents.Manage,Ribbon的文本和Ribbon导航的目标页面,点击完成按钮完成创建。

创建这两个对象会生成两个Elements.xml元素定义文件,我们修改一下里面Action相关的URL的查询字符串参数(?后面的部分)为如下所示:

ECB

{StandardTokens}&amp;SPListItemId={ItemId}&amp;SPListId={ListId}&amp;SPSource={Source}&amp;SPListURLDir={ListUrlDir}&amp;SPItemURL={ItemUrl}

Ribbon

{StandardTokens}&amp;HostUrl={HostUrl}&amp;Source={Source}&amp;ListURLDir={ListUrlDir}&amp;ListID={SelectedListId}&amp;ItemID={SelectedItemId}

注意这两个参数名的值略微有些不同的,具体的查询字符串参数值可以自行探索一下,不仅限于所列,而且貌似Ribbon无法取到ItemURL这个值,有知道的朋友欢迎分享。好的,完成了,接下来执行F5部署我们的项目。

弹出浏览器之后,跳转到我们的开发人员网站,点击左侧导航的文档进入到文档库的视图页面,如果没有文档就上传一个新文档,选中我们上传的文档,点击Ribbon或者ECB菜单,就可以看到我们自定义的操作了,点击可以看到效果。


~remoteAppUrl—表示远程托管提供应用程序所在的网站页面的URL。
CustomActionTarget.aspx—实现自定义操作的目标网站的ASPX页面。
StandardTokens—为页面提供标准的APP口令,包括宿主网站URL和上下文口令。
Source—触发该自定义操作的源URL,用于操作完成后页面的跳转。
ListUrlDir/ListId—触发该自定义操作所在的列表路径/列表ID。
ItemUrl/ItemId—触发该自定义操作的列表条目URL/列表条目ID。

相关文章
|
7月前
|
缓存 移动开发 JavaScript
如何优化UniApp开发的App的启动速度?
如何优化UniApp开发的App的启动速度?
1277 139
|
7月前
|
移动开发 JavaScript weex
UniApp开发的App在启动速度方面有哪些优势和劣势?
UniApp开发的App在启动速度方面有哪些优势和劣势?
574 137
|
7月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
1297 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
7月前
|
移动开发 JavaScript 应用服务中间件
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
963 5
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
7月前
|
人工智能 前端开发 JavaScript
最佳实践3:用通义灵码开发一款 App
本示例演示使用通义灵码,基于React Native与Node.js开发跨平台类通义App,重点展示iOS端实现。涵盖前端页面生成、后端代码库自动生成、RTK Query通信集成及Qwen API调用全过程,体现灵码在全栈开发中的高效能力。(238字)
826 11
|
7月前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
348 0
|
7月前
|
数据采集 JavaScript 前端开发
开发比分App?你缺的不是程序员
开发体育比分App,关键不在代码,而在懂体育、懂数据、懂用户。明确定位、理清需求、选好数据源,再找专业的产品、数据与技术人才协同,才能少走弯路。程序员最后入场,效率最高。
349 154
|
8月前
|
移动开发 小程序 Android开发
基于 uni-app 开发的废品回收类多端应用功能与界面说明
本文将对一款基于 uni-app 开发的废品回收类多端应用,从多端支持范围、核心功能模块及部分界面展示进行客观说明,相关资源信息也将一并呈现。
263 0
|
11月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:外卖App
仓颉语言实战分享,教你如何用仓颉开发外卖App界面。内容包括页面布局、导航栏自定义、搜索框实现、列表模块构建等,附完整代码示例。轻松掌握Scroll、List等组件使用技巧,提升HarmonyOS应用开发能力。

热门文章

最新文章