Outlook 2010 Надстройка на вкладке Назначение вкладки - PullRequest
7 голосов
/ 12 марта 2012

Я пытался добавить свою надстройку Outlook 2010 на вкладку TabAppointment. Это прекрасно работает, когда я добавляю его в TabCalendar, но если вы нажмете на встречу в календаре, будет показана другая вкладка, и эта вкладка, я думаю, будет TabAppointment. И, конечно же, мой Надстройка должна быть там. Пользователь не должен сначала менять вкладку, чтобы использовать ее.

enter image description here Список OfficeId для элементов управления / вкладок. Список можно скачать здесь .

enter image description here Вкладка Надстройка наконец должна быть размещена

Моя надстройка должна отображаться каждый раз при выборе элемента календаря. Итак, как я уже писал, TabCalendar работает, но затем он помещается в вкладку «Пуск».

У кого-нибудь есть идея, почему моя группа кнопок там не отображается, когда я выбираю TabAppointment? Это неправильная вкладка? Или просто невозможно добавить надстройки в этом месте?

1 Ответ

7 голосов
/ 18 марта 2012

Вы действительно используете не ту вкладку, или, точнее, вы не используете правильный ContextualTab

Добавление надстройки в contextualTab, насколько я знаю, невозможно.

Я могу предложить вам преобразовать вашу текущую ленту (конструктор) в XML-интерфейс ленты, правильно подключить XML и класс ленты к существующему коду.

<customUI onLoad="Ribbon_Load" xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon>
        <contextualTabs>
          <tabSet idMso="TabSetAppointment">
            <tab idMso="TabAppointment">
              <group id="group1" label="Normal Meeting Group" />
            </tab>
          </tabSet>
          <tabSet idMso="TabSetReccurringAppointment">
            <tab idMso="TabRecurringAppointment">
              <group id="group2" label="Recurring Meeting Group" />
            </tab>
          </tabSet>
        </contextualTabs>
    </ribbon>
</customUI>

Это позволит вашей группе / элементам управления появиться на требуемой (контекстной) вкладке. enter image description here

PS: не забудьте включить XML-элемент ленты, перезаписав метод CreateRibbonExtensibilityObject (), и создать обратные вызовы (он же обработчик событий от вашего дизайнера)

Надеюсь, что помогло:)

...