2017-04-18 3 views
0

Pour un addin pour Outlook 2016, je dois détecter si une fenêtre d'inspecteur (fenêtre de courrier électronique) s'est fermée.Détecter si la fenêtre de l'inspecteur Outlook est fermée

J'ai trouvé un guid sur le site Web de Microsoft, mais je n'arrive pas à le faire fonctionner. https://msdn.microsoft.com/en-us/library/office/ff184620.aspx
Je peux sembler ne pas trouver un moyen d'ajouter une méthode à l'événement près

((Outlook.InspectorEvents_Event)inspector).Close += 
     new Outlook.InspectorEvents_CloseEventHandler(
     OutlookInspectorWindow_Close); 

Quelqu'un at-il trouvé un moyen de le faire fonctionner? Je ne semble pas avoir un objet InspectorEvents_Events.

Merci à l'avance




Modifier

Ma fermeture n'est pas un événement, il est une méthode, comme mentionné ici Registering to the Outlook appointment item 'closed' event using VSTO
Vous devez forcer une distribution utilisant:

((InspectorEvents_10_Event)inspector).Close += Closed; 

Je n'ai pas à travailler parce que mon compilateur n'a pas suggéré InspectorEvents_Event ou InspectorEvents_10_Event

Répondre

1

Vous devez jeter l'objet d'inspecteur à l'interface InspectorEvents_10_Event:

 var inspector = Inspector as InspectorEvents_10_Event; 
     if (inspector != null) 
     { 
      inspector.Close += OnInspectorClose; 
     } 
Hey Eugene
+0

, merci pour les réponses. J'ai également découvert qu'il devait être lancé pour tirer l'événement et il l'a réparé. Cependant, cet événement est également renvoyé lorsque je change de courrier mais que la fenêtre reste ouverte. Y at-il une solution de contournement pour cela? – Ben

+0

Très probablement vous avez utilisé les boutons haut/bas, non? Dans ce cas, une fenêtre d'inspecteur est fermée/ouverte aussi. –