2. About Me Geoff Varosky MCP, MCTS Senior Solutions Developer for Grace-Hunt, LLC. Blog: http://www.geoffvarosky.com Email: gvarosky@grace-hunt.com Twitter: @gvaro
3. About Grace-Hunt Founded in 2004 Based in Hudson, MA Presence in North East, Mid Atlantic, and South East Regions Senior Level Consulting and Sales Staff Microsoft Gold Partner Specializing in SharePoint and Dynamics (CRM, SL, GP, NAV) Web: http://www.grace-hunt.com Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
4. Agenda What are Custom Actions? Demonstrations Creating a Simple Custom Action Anatomy of a Custom Action Creating a Slightly More Complex Custom Action Hiding Custom Actions Custom Action Groups References Q&A Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
11. Just What Are Custom Actions? Per Microsoft – “A custom action represents a link, toolbar button, menu item, or any control that can be added to a toolbar or menu that a user sees. Custom actions can be bound to list type, content type, file type, or programmatic identifier (ProgID).” Source: http://snipurl.com/d8y70 Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
12. Just What Are Custom Actions? What does that mean? Bits of XML Deployed via Features Create a Link within SharePoint Specific Location JavaScript, AJAX, URLs, etc. Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
13. Just What Are Custom Actions? What does that mean? Custom Actions can be bound to List Types A Custom Action can be bound to a Document Library, but, may not be bound to a Task List Example: Check In/Check Out Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
14. Just What Are Custom Actions? What does that mean? Custom Actions can be bound to File Types Example: ‘Edit in Microsoft Word’ bound to Word (.doc, .docx) document types Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
15. Just What Are Custom Actions? What does that mean? Custom Actions can be bound to Content Types Example: Folders, Document Content Types, List Content Types, etc. Programmatic Identifiers Example: Task List Identifier (107) http://snipurl.com/ntd5g Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
16. What Can Custom Actions Do? But wait, there’s more! Create links to pages that really should be there… Example: There is a link to the Site Collection Recycle Bin on the Site Settings page, however, there is no link to the current site Recycle Bin. (Demo #1) Custom Actions can pass along information to act upon Example: Add a “Complete Task” action to an Edit Control Block, which calls an ASPX page, taking the parameters of the List ID and Item ID, and updating the task item within a list. (Demo #2) Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
17. What Can Custom Actions Do? …and more Custom Actions can also be hidden Example: You do not want site administrators to be able to delete their sites by using the Delete This Site link on the Site Settings page so, we can remove it by using HideCustomAction (Demo #3) Create Groupings of Custom Actions by using CustomActionGroup Example: Create a grouping of your Custom Actions on the Site Settings page for all of your Custom Actions… (Demo #4) Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
18. What Tools Are Needed? Notepad What do I use? Visual Studio Andrew Connell’s SharePoint Project Utility for Visual Studio http://snipurl.com/d8yv9 Requires DevExpress DX Core to be installed (free) WSPBuilder (CodePlex) http://snipurl.com/d8yxv SharePoint Solution Installer (CodePlex) http://snipurl.com/nt6ux Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
30. Applies to all web applications, site collections, etc.....Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
31. Anatomy of a Custom Action Element Manifest (manifest.xml) Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
44. If not specified, displayed in the order it is read by SharePoint by Feature and by order in element listing (XML).Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
72. Resources My Blog http://www.geoffvarosky.com Click on SharePoint Saturday category on left side of page GraceHunt.SharePointCodePlex Projects http://codeplex.com/GraceHunt John Holliday’s Custom Action Resources Hiding Custom Actions, and a Utility to get all custom action identifiers http://snipurl.com/d8zea Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
73. Resources MSDN Custom Action Definitions http://snipurl.com/d8zi7 Default Custom Action Locations and IDs http://snipurl.com/d8zka How to: Add Custom Actions to the User Interface http://snipurl.com/d8zq2 CustomAction Element http://snipurl.com/d9jd4 CustomActionGroup Element http://snipurl.com/d9jfx HideCustomAction Element http://snipurl.com/d9jhs Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com
74. Resources Custom Actions in SharePoint 2010 Adding Custom Button to the SharePoint 2010 Ribbon http://snipurl.com/tz3vq by Jonathon Frost @ MSDN Adding Custom Actions to the List Item Menu in SharePoint 2010 Using SharePoint Designer 2010 http://snipurl.com/tr0t3 by Geoff Varosky How to Add a Tab to the Ribbon in SharePoint Foundation http://snipurl.com/tz3wi by Andrew May @ SP Dev Doc Team Twitter: @gvaro Email: gvarosky@grace-hunt.com Blog: www.geoffvarosky.com Company: www.grace-hunt.com