Я создал свою индивидуальную ленту в надстройке. Теперь я хотел бы добавить команду Новый слайд, которая существует на главном экране (см. снимок экрана ниже).
Добавить стандартную командную кнопку «Новый слайд» на настраиваемую ленту в надстройке Office
Ответы (5)
Вы можете добавить встроенные элементы управления на настраиваемую вкладку, указав их значения IdMso. См. файлы справки Office 2013: идентификаторы управления пользовательским интерфейсом Office Fluent.
Подробнее о пользовательском интерфейсе ленты можно прочитать в следующей серии статей в MSDN:
- Настройка ленты Office Fluent 2007 для разработчиков (часть 1 3)а>
- Настройка ленты Office Fluent 2007 для разработчиков (часть 2 3)а>
- Настройка ленты Office Fluent 2007 для разработчиков (часть 3 руководства 3)а>
Я думаю, что после долгих поисков я, наконец, понял это! Это весь код, который вам нужен, удалите все остальное. Это создаст новую кнопку слайда, такую же, как та, которая по умолчанию используется в PowerPoint.
<group id="add_slide" label="Add Slide">
<control idMso="SlideNewGallery" size="large" />
</group>
в настоящее время у меня есть новая кнопка слайда в моей надстройке, как на изображении ниже, которое дает мне новый слайд
однако мне нужна опция, подобная уже существующему новому слайду на домашней ленте, где я могу выбирать шаблоны. Есть ли способ вызвать эту кнопку на моей настраиваемой ленте, поэтому ниже мой слайд новостей, который я хочу получить в своем дополнении
private void New_slide_Click(object sender, RibbonControlEventArgs e)
{
PowerPoint.Application ppApp = Globals.ThisAddIn.Application;
ppApp.CommandBars.ExecuteMso("SlideNewGallery");
}
Я создал новую ленту на основе шаблона xml в VS. После этого я добавил группу и элемент управления на основе idMso-Value. При использовании этого XML-файла
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
<ribbon>
<tabs>
<tab id="tab0" label="AddIn">
<group id="grpCustom">
<button idMso="SlideNew" size="large" label="YOUR CUSTOM TEXT"></button>
</group>
<group idMso="GroupSlides"></group>
</tab>
</tabs>
</ribbon>
</customUI>
Это приводит к этой пользовательской ленте. Евгений Астафьев указал на это, вы можете найти значения idMso в MSDN.
Как объяснил Franz, решение состоит в использовании idMso. Для команды «Новый слайд», которую вы ищете, если вы посмотрите на MSN в Таблица idMso для «Нового слайда» вы найдете две записи. Вам нужна галерея с idMso=SlideNewGallery. (не кнопка). Вы можете добавить его в XML. Мне нравится использовать редактор ленты. В редакторе ленты это выглядит так:
А в надстройке это выглядит так:
Соответствующая часть CustomUI XML выглядит следующим образом
<group id="TD_GrpMisc" label="Misc">
<gallery
idMso="SlideNewGallery"
size="large"/>
<button
idMso="SlideNew"
size="large"/>
</group >