Pages

Friday, August 1, 2014

SharePoint Ribbon Custom Action Button in Publishing Page Tab

While extending SharePoint 2010/2013 Ribbon with new functionality one of the common things you do is to check whether a command should be enabled or not. Since the checking function expects you to return a value it can get tricky if your custom checking operation is asynchronous. Find out how to asynchronously check if a Ribbon command is available.


While working on one of our SharePoint 2010 WCM products recently I had to apply this concept twice: once for checking if a button should be enabled and the other time for checking if a toggle button should be on or off. Below you will find sample code from the Page Component for both scenarios.
For the purpose of this article I have created the following custom Ribbon command:

<CustomAction Id="Mavention.SharePoint.Labs.MyCustomAction"
              Location="CommandUI.Ribbon"
              Sequence="10">
  <CommandUIExtension>
    <CommandUIDefinitions>
      <CommandUIDefinition Location="Ribbon.WikiPageTab.PubPageActions.Controls._children">
        <ToggleButton
          Id="Ribbon.WikiPageTab.PubPageActions.MaventionMyCustomAction"
          Alt="My Custom Action"
          Command="Mavention.SharePoint.Labs.MyCustomAction"
          QueryCommand="Mavention.SharePoint.Labs.MyCustomActionQuery"
          LabelText="My Custom Action"
          Sequence="40"
          TemplateAlias="o2"
          Image16by16="/_layouts/$Resources:core,Language;/images/formatmap16x16.png" Image16by16Top="-112" Image16by16Left="-16"
          ToolTipTitle="My Custom Action"
          ToolTipDescription="My Custom Action."/>
      </CommandUIDefinition>
    </CommandUIDefinitions>
  </CommandUIExtension>
</CustomAction>




No comments:

Post a Comment