Globals.ThisAddIn.Application.ActiveInspector == null, хотя отображается действительный элемент Outlook.AppointmentItem, почему? - PullRequest
0 голосов
/ 21 марта 2019

Я разрабатываю плагин для Outlook, используя VSTO.

в методе: this.Load + = new Microsoft.Office.Tools.Ribbon.RibbonUIEventHandler (this.MyApp_Load);

В MyApp_Load моей ленты я использую следующий код:

if (Globals.ThisAddIn.isLoggedIn())
{
    btnMyApp.Visible= true;
    Outlook.Inspector inspector = 
         Globals.ThisAddIn.Application.ActiveInspector();
    if (inspector != null && inspector.CurrentItem != null)
    {

Когда я открываю AppointmentItem в Outlook, я могу отладить код выше.К сожалению, ActiveInspector () == null, хотя отображается действительный элемент AppointmentItem.

Почему?

1 Ответ

0 голосов
/ 23 марта 2019

Этот метод вызывается до отображения инспектора.Вы должны использовать RibbonUI, переданный в качестве аргумента для вашего обратного вызова onLoad и приведение RibbonUI.Context к интерфейсу Inspector.

...