SharePoint 2013 自定義擴充套件選單
在對SharePoint進行開發或者功能擴充套件的時候,經常需要對一些預設的選單進行擴充套件,以使我們開發的東西更適合SharePoint本身的樣式。SharePoint的各種功能選單,像網站設定、Ribbon、列表裡的下拉等等,都是一樣原理的,都是XML+JS指令碼實現的,如果想實現這些功能,只需要一個XML釋出成Feature,並在網站功能啟用,即可。
其實,關於這個並沒有什麼過多可以說的東西,大家在實踐中,漸漸理解了。下面,我就舉幾個簡單的例子,做一下簡要說明。
專案結構
新建一個空白的SharePoint 2013專案,新增一個Feature檔案,一個選單定義的XML檔案,如下圖。
XML選單定義,如下圖:
例一:擴充套件wssuc:Welcome控制元件
擴充套件前截圖:
擴充套件後截圖:
擴充套件XML:
<?xml version="1.0" encoding="utf-8"?> <Elements xmlns="http://schemas.microsoft.com/sharepoint/"> <CustomAction Id="MyTopMenuLink" Location="Microsoft.SharePoint.StandardMenu" GroupId="PersonalActions" Sequence="0" Title="部落格園-霖雨"> <UrlAction Url="http://www.cnblogs.com/jianyus"/> </CustomAction> </Elements>
例二 擴充套件SiteAction(網站設定)選單
擴充套件前截圖
擴充套件後截圖
擴充套件XML
<CustomAction Id="MyTopMenuLink" Location="Microsoft.SharePoint.StandardMenu" GroupId="SiteActions" Sequence="0" Title="部落格園-霖雨"> <UrlAction Url="http://www.cnblogs.com/jianyus"/> </CustomAction>
例三 擴充套件網站設定選單
擴充套件後截圖
擴充套件XML
<CustomAction Id="MyTopMenuLink" Location="Microsoft.SharePoint.SiteSettings" GroupId="Customization" Sequence="106" Title="部落格園-霖雨"> <UrlAction Url="http://www.cnblogs.com/jianyus"/> </CustomAction>
網站設定選單,不僅僅可以通過GroupId設定顯示在哪個位置,還可以單獨新增一個Group,後面我們會舉例說明。
至於GroupId選擇哪一個,請參考附後的MSDN文件。
例四 擴充套件文件庫Ribbon選單
擴充套件後截圖
擴充套件XML
<CustomAction Id="MyTopMenuLink" Location="Microsoft.SharePoint.StandardMenu" GroupId="SettingsMenu" RegistrationType="List" RegistrationId="101" Sequence="0" Title="部落格園-霖雨"> <UrlAction Url="http://www.cnblogs.com/jianyus"/> </CustomAction>
RegistrationId可以區分是文件庫,還是列表庫,是TemplateID
例五 擴充套件文件庫ECB選單
擴充套件後截圖
擴充套件XML
<?xml version="1.0" encoding="utf-8"?> <Elements xmlns="http://schemas.microsoft.com/sharepoint/"> <CustomAction Id="MyTopMenuLink" Location="EditControlBlock" RegistrationType="List" RegistrationId="101" Sequence="0" Title="部落格園-霖雨"> <UrlAction Url="http://www.cnblogs.com/jianyus"/> </CustomAction> </Elements>
如上圖,因為Sequence是0,所以這個選單在最上面,如果想要移動位置,設定這個值即可。
例六 擴充套件網站操作組
擴充套件後截圖
擴充套件XML
<!-- Custom Action Group --> <CustomActionGroup Id="CustomActionGroup" Description="自定義組" Title="我的自定義組" Location="Microsoft.SharePoint.SiteSettings" Sequence="30" /> <!-- Custom Action in Custom Action Group --> <CustomAction Id="CustomAction1" Description="自定義操作" Title="自定義操作一" GroupId="CustomActionGroup" Location="Microsoft.SharePoint.SiteSettings" Rights="ManageWeb" RequireSiteAdministrator="FALSE" Sequence="20"> <UrlAction Url="~sitecollection/_layouts/CustomAction1.aspx" /> </CustomAction> <CustomAction Id="CustomAction2" Description="自定義操作" Title="自定義操作二" GroupId="CustomActionGroup" Location="Microsoft.SharePoint.SiteSettings" Rights="ManageWeb" RequireSiteAdministrator="FALSE" Sequence="20"> <UrlAction Url="~sitecollection/_layouts/CustomAction2.aspx" /> </CustomAction>
如上圖,添加了網站操作組,可以用來新增我們的設定。在2013之前版本,類似SiteAction等,都可以進行分組,但是2013我嘗試了一下,分組沒有成功。而且,之前版本的網站設定,都是選單分組的形式;新版本預設都沒有分組,是否支援還有待進一步研究。
後記
以上,是幾個簡單的擴充套件選單例子,主要還是修改GroupId和Location來確定選單的顯示位置,通過Rights來限制許可權,Sequence來設定排序等,更多的擴充套件,請參考MSDN自行嘗試。
參考MSND連結
1、Default Custom Action Locations and IDs
http://msdn.microsoft.com/en-us/library/bb802730.aspx
2、Custom Actions and Ribbons
http://www.matthiaseinig.de/docs/SPSF/OutputHTML/SPSF_RECIPES_CATEGORY_CUSTOMACTIONS.html
包含另外三個例子,列表設定、管理中心、人員和組新增選單
相關推薦
SharePoint 2013 自定義擴充套件選單
在對SharePoint進行開發或者功能擴充套件的時候,經常需要對一些預設的選單進行擴充套件,以使我們開發的東西更適合SharePoint本身的樣式。SharePoint的各種功能選單,像網站設定、Ribbon、列表裡的下拉等等,都是一樣原理的,都是XML+JS指令碼實
環信自定義擴充套件選單提示下標越界的問題記錄
整合EasyUI的時候發現,一直提示資料越界,傳送完一條自定義訊息後,在點選選單傳送就崩了。最後找到解決方案: 自定義屬性的時候一定要挨著前面的順序遞增新增屬性值,不然會報陣列越界,這個地方坑了好久。
SharePoint 2013 Designer 自定義操作選單
眾所周知,我們在SharePoint的二次開發中,經常會新增ECB選單或者Ribbon選單,通常我們會採取Feature的方式去新增一個Xml,或者採取JavaScript的方式,當然,除此之外,還可以利用Designer新增這些自定義操作,而且更加方便;但是,這種操作
如何使用VS建立SharePoint自定義Ribbon選單(圖文和程式碼)
如何使用VS建立SharePoint自定義Ribbon選單 SharePoint Ribbon選單 SharePoint 2010為我們帶來了很多新功能,這些新功能使得SharePoint更像是一個Office客戶端應用程式,這無疑是令人振奮的。提到Office就不能不
scrapy 自定義擴充套件的功能
在scrapy.telnet裡有一個TelnetConsole類 class TelnetConsole(protocol.ServerFactory): def __init__(self, crawler): if not crawler.settings.getb
scrapy 自定義擴充套件
1、新建一個擴充套件檔案,定義一個類,必須包含from_crawler方法: from scrapy import signals class MyExtend: def __init__(self, crawler): self.crawler = crawler
iOS商品詳情、ffmpeg播放器、指示器集錦、自定義圓弧選單、實用工具等原始碼
iOS精選原始碼 電商商品詳情 Swift.兩種方式實現tableViewCell拖拽功能 ffmpeg+openGL播放器 微信聊天表情雨、表情下落、表情動畫 iOS指示器集錦 彈窗增加 pickerView 可互動、無限個數、支援回
Ionic3 自定義tabs選單圖示
tabs.scss .ion-tab-icon-base { width: 30px !important; height: 30px !important; } .ion-tab-icon-md-base { min-width
自定義擴充套件js函式庫---string.replaceAll()---字元替換所有指定字元
/* * 自定義擴充套件js函式庫 * @time:181203 * @add : string.replaceAll()---字元替換所有指定字元 */ /* * string.replaceAll()---字元替換所有指定字元 * @parameter: FindTex
Aras學習筆記 (24) 新增自定義TOC選單
Aras的TOC(Table of Content)選單預設的效果如下。 下面我要介紹下如何建立自定義的選單以及子選單,類似下面的格式。 大家知道將ItemType應用到TOC中,通常做法是在Tab頁TOC Access下操作。 由此我們應該可以想到如果新
LARAVEL自定義擴充套件BLADE模板指令
我們以比較常用的continue和break為例子,在AppServiceProvider類的boot方法裡面新增如下程式碼: public function boot() { Blade::directive('continue', function() { ret
Adams 2013自定義外掛方法zz
1.Adams外掛介紹 Adams的高階模組(如Controls控制模組、Vibration振動模組、Durability耐久性模組等)是以外掛的形式整合在Adams軟體中。通過Adams提供的外掛管理器(Plugin Manager)工具能非常方便地對這些外掛進行管理,即插即用,
自定義menu選單佈局
一:先寫一個自定義的選單佈局 這個佈局可以根據業務需要任意寫 <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android
Nginx自定義擴充套件模組及編譯
1. 概述 參考 Nginx開發HTTP模組入門 2. 擴充套件模組(假設根目錄名稱為nginx) nginx/configure檔案中可以修改配置檔案路徑: 例如像把配置檔案從預設的nginx.conf改為webserver.conf:NGX_P
可自定義擴充套件底部列表對話方塊ListBottomSheetDialogFragment
因為需要,為了方便,構建了一個可以自定義擴充套件的底部列表對話方塊,可以應付大部分場景。 效果圖如下: 1.預設實現: 2.自定義列表實現 3.自定義頭部和列表實現 一.可實現功能 1.預設可實現通用列表對話方塊,上方HeaderView包括取消、標題、確
Win10自定義開始選單磁貼背景顏色及圖示
問題: win10的開始選單磁貼中,office的圖示背景色與設定的系統主題色不一致。或者像自定義磁貼背景色。 方法: 1、定位到軟體主程式所在目錄 可以通過右鍵磁貼,開啟檔案所在位置,找到該磁貼的快捷方式,再次右鍵單擊開啟檔案所在的位置,定位到軟體安裝目錄,找到XXX.
sharepoint 2010 自定義列表資料的增刪改查常用操作 server object model
在sharepoint的開發過程中,用得最多的,就是獲取sharepoint的列表資料,以及對其進行一系列的增刪改查等操作,這裡主要是記錄一些常用的操作,通過物件模型方式對資料進行增刪改查。 由於sharepoint對列表的資料都有許可權要求,一般都是採取提升管理員許可權, //提升管理員許
繼承LinearLayout自定義左側選單
public class LeftMenuView extends LinearLayout { LinkedHashMap<Integer,String> map=new LinkedHashMap<>(); public LeftMenuView(Context
SpringBoot之@EnableAutoConfiguration原理及自定義擴充套件
spring Boot是一個偏執的開源框架,它可用於建立可執行的Spring應用程式,採用了習慣優於配置的方法。 此框架的神奇之處在於@EnableAutoConfiguration註釋,此註釋自動載入應用程式所需的所有Bean——這依賴於Spring Boot在類路徑
基於spring的schema自定義擴充套件(二)
上文分析了spring如何解析xml中標籤 自定義schema規範約束 新建test-schema.xsd檔案定義如下內容 <xsd:schema xmlns="http://www.myhost.com/schema/demo" xmlns:xsd="htt