SharePoint 2013 Ribbon API. Версии 14.3 и 15.4

Очередной релиз QASPRibbon для работы с SharePoint Ribbon. Обновление касается как 14 версии для SharePoint 2010, так и 15 для SharePoint 2013.

Также впервые стала доступна урезанная версия для управления лентой в sandbox-решениях, позволяющая использовать QASPRibbon API в решениях для SharePoint Online.

Что нового

В версиях 14.3 и 15.3 изменился порядок формирования контролов и при переходе со старых версий API, придется переписать код (несущественно).

Новый элемент - секция

Для SharePoint Ribbon этот элемент не новый, в предыдущих версия QASPRibbon его поддержка не была реализована. Контролы помещались непосредственно в группу, а при формировании XML-определения для всех контролов в группе создавалась одна единственная секция.

Было примерно так:

  1. RibbonGroup group = new RibbonGroup("RibbonGroupId""Ribbon Title")
  2. {
  3.     Alignment = RibbonGroupAlignment.Top,
  4.     Template = RibbonGroupTemplate.ThreeRows,
  5.     DisplayMode = RibbonDisplayMode.Image16AndCaption,
  6.     Controls = new RibbonControl[] {
  7.         //TODO: Define controls
  8.     }
  9. };

Теперь группа должна содержать коллекцию секций, а уже секции - контролы. Начиная с версии 14.3 и 15.3 код выше придется переписать:

  1. RibbonGroup group = new RibbonGroup("RibbonGroupId""Ribbon Title")
  2. {
  3.     Sections = new RibbonSection[]
  4.     {
  5.         new RibbonSection("SectionId")
  6.         {
  7.             Alignment = RibbonSectionAlignment.Top,
  8.             Type = RibbonSectionType.ThreeRows,
  9.             DisplayMode = RibbonDisplayMode.Image16AndCaption,
  10.             Controls = new RibbonControl[] {
  11.                 //TODO: Define buttons
  12.             }
  13.         }
  14.     }
  15. };

Использование секций при построении кастомных вкладок рибона позволяет делать следующее:

  • Использовать разную разметку элементов в пределах одной группы;
  • Использовать разделитель между элементами группы.

SharePoint Online (Sandbox)

К двум имеющимся версиям Ribbon API (для 2010 и 2013 SharePoint) я добавил еще одну - урезанную для использования её в sandbox-решениях. Ничто теперь не мешает использовать Ribbon API при создании решений для Office 365 (SharePoint Online).

Использования Ribbon API в решениях для SharePoint Online довольно сильно ограничено. Дело в том, что для регистрации контролов на ленте необходимо "добраться" до контрола SPRibbon, что невозможно сделать в sandbox-решениях. Поэтому использовать QASPRibbon можно только в ресиверах фич для модификации существующих элементов управления (удаление/замена вкладки, группы контролов и контрола).

Ссылки

QASPRibbon API для SharePoint Online
QASPRibbon API 15.4 для SharePoint 2013
QASPRibbon API 14.3 для SharePoint 2010

Виталий Жуков

Виталий Жуков

SharePoint архитектор, разработчик, тренер, Microsoft MVP (Office Development). Более 15 лет опыта работы с SharePoint, Dynamics CRM, Office 365, и другими продуктами и сервисами Microsoft.

Смотрите также

SharePoint 2007. Проверка на наличие элемента в списке

SharePoint 2007. Проверка на наличие элемента в списке

SharePoint 2007. База данных содержимого

SharePoint 2007. База данных содержимого

SharePoint 2007. Свой контрол на панели свойств веб-парта

SharePoint 2007. Свой контрол на панели свойств веб-парта

SharePoint 2007. Максимальное/минимальное значение поля в списке

SharePoint 2007. Максимальное/минимальное значение поля в списке

SharePoint 2007. Получение данных из нескольких списков и узлов

SharePoint 2007. Получение данных из нескольких списков и узлов