SlideShare uma empresa Scribd logo
1 de 28
Creating Custom Actions in SharePoint 2010 Geoff Varosky
About Me Geoff Varosky Grace Hunt SharePoint Solutions Group Director, Development & Evangelism Blogger, Author, Speaker BASPUG Co-Founder SPS Boston Co-Organizer Blog : www.sharepointyankee.com Email: gvarosky@gracehunt.com Twitter: @gvaro LinkedIn & Facebook geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
About Grace Hunt Microsoft Gold Partner Founded 2004 Practice Areas Microsoft SharePoint Technologies Business Process and Planning Portals & Collaboration Information Worker Solutions Dynamics CRM, SL, GP, NAV Microsoft Cloud Technologies geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
Agenda What are Custom Actions? Demonstrations Using SharePoint Designer Importing into Visual Studio Finding Custom Actions Building & Deployment in Visual Studio References Q&A geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Site Actions Menu geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Ribbon UI Ribbon Tabs geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Site Settings Menu geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Edit Control Block (ECB) / List Item Menu geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Custom Action Group geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Tabs geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Tabs Organize a set of groups Contain one or more controls geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Controls Button Checkbox Color Picker Combo Box Drop Down Flyout Anchor Insert Table Label Menu Menu Section MRU Split Button Most Recently Used Spinner Split Button Text Box Toggle Button geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
What are Custom Actions? Bits of XML <CustomAction 	Id=“MyCustomAction” Location=“Microsoft.SharePoint.SiteSettings 	… /> Links <CustomAction…> 	<UrlActionUrl=“http://www.foo.com” /> </CustomAction> JavaScript (optional) <CustomAction …> 	<UrlActionUrl=“javascript:DoSomething();” /> </CustomAction> Code Behind (optional) <CustomAction 	… ControlAssembly=“MyCode, Version=1.0.0.0, Culture=neutral, PublicKeyToken=63316a326e123aec"ControlClass=“MyCode.Class“ /> geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 <CustomAction ContentTypeId = "Text"  ControlAssembly = "Text"  ControlClass = "Text"  ControlSrc = "Text"  Description = "Text"  GroupId = "Text"  Id = "Text"  ImageUrl = "Text"  Location = "Text"  RegistrationId = "Text"  RegistrationType = "Text"  RequireSiteAdministrator = "TRUE" | "FALSE"  Rights = "Text"  Sequence = "Integer"  ShowInLists = "TRUE" | "FALSE"  ShowInReadOnlyContentTypes = "TRUE" | "FALSE"  ShowInSealedContentTypes = "TRUE" | "FALSE"  Title = "Text">  <URLAction URL=“” /> <CommandUI></CommandUI> </CustomAction> geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 <CustomAction ContentTypeId = "Text"  ControlAssembly = "Text"  ControlClass = "Text"  ControlSrc = "Text"  Description = "Text"  GroupId = "Text"  Id = "Text"  ImageUrl = "Text"  Location = "Text"  RegistrationId = "Text"  RegistrationType = "Text"  RequireSiteAdministrator = "TRUE" | "FALSE"  Rights = "Text"  Sequence = "Integer"  ShowInLists = "TRUE" | "FALSE"  ShowInReadOnlyContentTypes = "TRUE" | "FALSE"  ShowInSealedContentTypes = "TRUE" | "FALSE"  Title = "Text">  <URLAction URL=“” /> <CommandUI></CommandUI> </CustomAction> geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 Id (optional) Specifies a unique identifier for custom action May be a GUID or a unique term Example: DeleteWeb GroupID(optional) Identifies the unique group that this element is contained in Example: SiteTasks geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 Location (optional) ,[object Object]
Example: Microsoft.SharePoint.SiteSettingsRegistrationType(optional) ,[object Object]
Example: Listgeoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 RegistrationId(optional) ,[object Object]
Example (List Identifier – Task List): 107{$ListId:Lists/Tasks;} (http://snipurl.com/ntd5g) Title (required) ,[object Object]
Example: DeleteWebgeoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 Description(optional) ,[object Object]
Sequence (optional)
The order in which your action will appear.
If not specified, displayed in the order it is read by SharePoint by Feature and by order in element listing (XML).geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
(CustomAction) Anatomy 101 UrlAction Tokens ,[object Object]
References the current SPWeb context

Mais conteúdo relacionado

Mais de Geoff Varosky

Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellGeoff Varosky
 
Automating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellAutomating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellGeoff Varosky
 
The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010Geoff Varosky
 
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Who? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePointWho? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePointGeoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...Geoff Varosky
 
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
Spsnh   geoff varosky - jornata - planning and configuring extranets in share...Spsnh   geoff varosky - jornata - planning and configuring extranets in share...
Spsnh geoff varosky - jornata - planning and configuring extranets in share...Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Geoff Varosky
 
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...Geoff Varosky
 
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010Geoff Varosky
 

Mais de Geoff Varosky (20)

Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
 
Automating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShellAutomating Your Enterprise Application Deployments with PowerShell
Automating Your Enterprise Application Deployments with PowerShell
 
The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010Creating Custom Actions in SharePoint 2010
Creating Custom Actions in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010The Ribbon UI and Custom Actions in SharePoint 2010
The Ribbon UI and Custom Actions in SharePoint 2010
 
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Who? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePointWho? What? Where? Searching in SharePoint
Who? What? Where? Searching in SharePoint
 
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
Planning and Configuring Extranets in SharePoint 2010 @ SharePoint Saturday N...
 
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
Spsnh   geoff varosky - jornata - planning and configuring extranets in share...Spsnh   geoff varosky - jornata - planning and configuring extranets in share...
Spsnh geoff varosky - jornata - planning and configuring extranets in share...
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010Planning and Configuring Extranets in SharePoint 2010
Planning and Configuring Extranets in SharePoint 2010
 
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
SharePoint Saturday Hartford - 01/29/11 - Creating Custom Actions in SharePoi...
 
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
SharePoint Saturday EMEA - The Ribbon UI and Custom Actions in SharePoint 2010
 

Último

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 

Último (20)

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

SPTechCon San Francisco 2011 - Geoff Varosky - Creating Custom Actions in SharePoint 2010

  • 1. Creating Custom Actions in SharePoint 2010 Geoff Varosky
  • 2. About Me Geoff Varosky Grace Hunt SharePoint Solutions Group Director, Development & Evangelism Blogger, Author, Speaker BASPUG Co-Founder SPS Boston Co-Organizer Blog : www.sharepointyankee.com Email: gvarosky@gracehunt.com Twitter: @gvaro LinkedIn & Facebook geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 3. About Grace Hunt Microsoft Gold Partner Founded 2004 Practice Areas Microsoft SharePoint Technologies Business Process and Planning Portals & Collaboration Information Worker Solutions Dynamics CRM, SL, GP, NAV Microsoft Cloud Technologies geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 4. Agenda What are Custom Actions? Demonstrations Using SharePoint Designer Importing into Visual Studio Finding Custom Actions Building & Deployment in Visual Studio References Q&A geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 5. What are Custom Actions? Site Actions Menu geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 6. What are Custom Actions? Ribbon UI Ribbon Tabs geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 7. What are Custom Actions? Site Settings Menu geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 8. What are Custom Actions? Edit Control Block (ECB) / List Item Menu geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 9. What are Custom Actions? Custom Action Group geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 10. What are Custom Actions? Tabs geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 11. What are Custom Actions? Tabs Organize a set of groups Contain one or more controls geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 12. What are Custom Actions? Controls Button Checkbox Color Picker Combo Box Drop Down Flyout Anchor Insert Table Label Menu Menu Section MRU Split Button Most Recently Used Spinner Split Button Text Box Toggle Button geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 13. What are Custom Actions? Bits of XML <CustomAction Id=“MyCustomAction” Location=“Microsoft.SharePoint.SiteSettings … /> Links <CustomAction…> <UrlActionUrl=“http://www.foo.com” /> </CustomAction> JavaScript (optional) <CustomAction …> <UrlActionUrl=“javascript:DoSomething();” /> </CustomAction> Code Behind (optional) <CustomAction … ControlAssembly=“MyCode, Version=1.0.0.0, Culture=neutral, PublicKeyToken=63316a326e123aec"ControlClass=“MyCode.Class“ /> geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 14. (CustomAction) Anatomy 101 <CustomAction ContentTypeId = "Text" ControlAssembly = "Text" ControlClass = "Text" ControlSrc = "Text" Description = "Text" GroupId = "Text" Id = "Text" ImageUrl = "Text" Location = "Text" RegistrationId = "Text" RegistrationType = "Text" RequireSiteAdministrator = "TRUE" | "FALSE" Rights = "Text" Sequence = "Integer" ShowInLists = "TRUE" | "FALSE" ShowInReadOnlyContentTypes = "TRUE" | "FALSE" ShowInSealedContentTypes = "TRUE" | "FALSE" Title = "Text"> <URLAction URL=“” /> <CommandUI></CommandUI> </CustomAction> geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 15. (CustomAction) Anatomy 101 <CustomAction ContentTypeId = "Text" ControlAssembly = "Text" ControlClass = "Text" ControlSrc = "Text" Description = "Text" GroupId = "Text" Id = "Text" ImageUrl = "Text" Location = "Text" RegistrationId = "Text" RegistrationType = "Text" RequireSiteAdministrator = "TRUE" | "FALSE" Rights = "Text" Sequence = "Integer" ShowInLists = "TRUE" | "FALSE" ShowInReadOnlyContentTypes = "TRUE" | "FALSE" ShowInSealedContentTypes = "TRUE" | "FALSE" Title = "Text"> <URLAction URL=“” /> <CommandUI></CommandUI> </CustomAction> geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 16. (CustomAction) Anatomy 101 Id (optional) Specifies a unique identifier for custom action May be a GUID or a unique term Example: DeleteWeb GroupID(optional) Identifies the unique group that this element is contained in Example: SiteTasks geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 17.
  • 18.
  • 19. Example: Listgeoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 20.
  • 21.
  • 22. Example: DeleteWebgeoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 23.
  • 25. The order in which your action will appear.
  • 26. If not specified, displayed in the order it is read by SharePoint by Feature and by order in element listing (XML).geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 27.
  • 28. References the current SPWeb context
  • 30. References the current SPSite context
  • 32. GUID of the item action is called from
  • 34. URL of the item the action is called fromgeoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 35. (CustomAction) Anatomy 101 UrlAction Tokens {ListId} GUID representation of the list {SiteUrl} References the URL of the SPWeb context the action is called from {RecurrenceId} Unsupported in context menus http://go.gvaro.net/bHaqaQ geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 36. What are Custom Actions? Can be bound to… Lists Tasks, Document Libraries, Custom, etc. geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 37. What are Custom Actions? Can be bound to… File Types By Extension - .docx, .pl, .foo, .bar geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 38. What are Custom Actions? Can be bound to… Content Types Tasks, Documents, Custom All (0x) http://go.gvaro.net/bbYxRy Programmatic Identifiers Tasks List (107) Content Types (0x) geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 39. Building Custom Actions SharePoint Designer 2010 Visual Studio 2010 CKS:DEV Adds Custom Action Item Templates http://cksdev.codeplex.com NotePad? geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 40. Building Custom Actions SharePoint Designer 2010 Build Custom Actions List Item Menu List View, Edit, Display Forms Visual Studio 2010 Import from WSP file Package Add Functionality Deploy geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 41. DEMOS! Building Custom Actions in SharePoint Designer 2010Importing Custom Actions into Visual Studio 2010Listing All Custom ActionsUsing CKS:DEVCustom Action GroupsHiding Custom ActionsMaybe more? geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 42. Bonus Round! Referencing JavaScript Files Jan Tielens on EUSP http://go.gvaro.net/dvCSS6 Can Add JavaScript into the HEAD of a page using a Custom Action Location references “/_layouts/” always geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 43. References Eric Kraus Listing all Custom Actions in the Farm with PowerShell http://go.gvaro.net/bD7OHm MSDN Custom Action Definition Schema CommandUIDefintions, Extensions, Handlers CustomAction, CustomActionGroup, HideCustomAction Default Locations and IDs http://go.gvaro.net/9q0QV2 geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 44. References WictorWilén Creating Custom Ribbon Extensions Part 1 - http://go.gvaro.net/aFUwBW Part 2 - http://go.gvaro.net/aGlydC Using JavaScript + Custom Actions to navigate Document Libraries http://go.gvaro.net/h2w8mN geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 45. References My Blog www.sharepointyankee.com Search for “Custom Action” Creating Custom Actions with SharePoint Designer Default List Type IDs Deploying Custom Actions Across All List Types Custom Actions in SharePoint 2007 SPBasePermissions Enumeration (Rights) Creating Custom Actions using SharePoint Designer 2010 “Delete This Site” More… geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 46. geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 47. Meets 2nd Wednesday/Month 6P – 8PM Microsoft N.E.R.D. Center http://www.bostonsharepointug.org Twitter: @BASPUG / #BASPUG geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 48. Q&A geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]
  • 49. About Me Geoff Varosky Grace Hunt SharePoint Solutions Group Director, Development & Evangelism Blogger, Author, Speaker BASPUG Co-Founder SPS Boston Co-Organizer Blog : www.sharepointyankee.com Email: gvarosky@gracehunt.com Twitter: @gvaro geoffvarosky gvarosky@gracehunt.com [email] www.gracehunt.com [web] sharepointyankee.com [blog] @gvaro [twitter]