2015-11-23 1 views
3

Я пытаюсь создать надстройку для Outlook 2016. В предыдущих версиях Office это было сделано с помощью WinForms UserControl и было довольно простым. Тем не менее, в Visual Studio 2015 теперь есть универсальные шаблоны для Office. Добавить в, который я бы хотел использовать, а не Outlook VSTO Add In (оба показаны here).Создать надстройку надстройки Office для Outlook 2016

Моя проблема заключается в том, что при выборе нового офиса Добавить в шаблон, Visual Studio спрашивает, какие приложения (ы) этот плагин в для, и, как показано, там не option for Outlook.

Итак, я хотел бы знать, как создать пользовательскую панель задач для Outlook 2016 с использованием новых шаблонов Office?

Извинения за ссылки на изображения, у меня пока нет достаточного количества ответов, чтобы напрямую добавить их к вопросам. Благодаря!

ответ

2

Существует пример решения на GitHub. В этом примере используются JavaScript и HTML. Вот пример JavaScript, который извлекает данные из выбранной электронной почты:

Office.initialize = function (reason) { 
    $(document).ready(function() { 
     app.initialize(); 

     loadProps(); 
    }); 
}; 

    function loadProps() { 
    var item = Office.context.mailbox.item; 

    $('#dateTimeCreated').text(item.dateTimeCreated.toLocaleString()); 
    $('#dateTimeModified').text(item.dateTimeModified.toLocaleString()); 
    $('#itemClass').text(item.itemClass); 
    $('#itemId').text(item.itemId); 
    $('#itemType').text(item.itemType); 

    if (item.itemType == Office.MailboxEnums.ItemType.Message){ 
    loadMessageProps(item); 
    } 
    else { 
    loadAppointmentProps(item); 
    } 
} 

Затем это связанно с HTML-страницу для отображения данных. Чтобы добавить это в Outlook, есть также файл манифеста XML. Это говорит прогноз, где найти страницы, вот фрагмент файла:

<Requirements> 
    <bt:Sets DefaultMinVersion="1.3"> 
    <bt:Set Name="Mailbox" /> 
    </bt:Sets> 
</Requirements> 
<Hosts> 
    <Host xsi:type="MailHost"> 
    <DesktopFormFactor> 
     <!-- Message read form --> 
     <ExtensionPoint xsi:type="MessageReadCommandSurface"> 
     <OfficeTab id="TabDefault"> 
      <Group id="msgReadDemoGroup"> 
      <Label resid="groupLabel" /> 
      <Tooltip resid="groupTooltip" /> 
      <!-- Task pane button --> 
      <Control xsi:type="Button" id="msgReadOpenPaneButton"> 
       <Label resid="paneReadButtonLabel" /> 
       <Tooltip resid="paneReadButtonTooltip" /> 
       <Supertip> 
       <Title resid="paneReadSuperTipTitle" /> 
       <Description resid="paneReadSuperTipDescription" /> 
       </Supertip> 
       <Icon> 
       <bt:Image size="16" resid="green-icon-16" /> 
       <bt:Image size="32" resid="green-icon-32" /> 
       <bt:Image size="80" resid="green-icon-80" /> 
       </Icon> 
       <Action xsi:type="ShowTaskpane"> 
       <SourceLocation resid="readTaskPaneUrl" /> 
       </Action> 
      </Control> 
      </Group> 
     </OfficeTab> 
     </ExtensionPoint> 

Надеется, что это помогает другие, как это помогло мне.