Question

J'ai besoin d'afficher un formulaire personnalisé au lieu du formulaire d'inspecteur par défaut pour un élément de rendez-vous Outlook. Je veux faire cela en C #.

Il existe un bon didacticiel sur devx , mais il utilise VB, et moi vouloir utiliser C #. J'ai donc traduit le code en C # et j'ai un problème où je dois remplacer le gestionnaire d'événements Open pour AppointmentItem (appelé mcAI ). Dans la tute mentionnée ci-dessus, ils disent de faire ce qui suit en VB:

Private Sub tyAI_Open(ByRef Cancel As Boolean) Handles tyAI.Open
    Cancel = True
End Sub

qui me traduit par:

private void mcAI_Open(out bool Cancel)
{
    Cancel = true;
}

(Remarque: j'ai essayé ceci avec et sans les paramètres out et ref , et avec / sans objet comme premier paramètre également

Cependant, nous devons enregistrer qu'il s'agit d'un événement avec l'événement. J'ai donc mis ce code:

mcAI.Open += 
    new Microsoft.Office.Interop.Outlook.ItemEvents_10_OpenEventHandler(mcAI_Open);

Mais je ne peux pas compiler ceci car j'obtiens l'erreur:

  

Aucune surcharge pour 'mcAI_Open' ne correspond au délégué 'Microsoft.Office.Interop.Outlook.ItemEvents_10_OpenEventHandler'

Des idées sur la manière dont je suis censé enregistrer ma fonction pour l'événement Open de AppointmentItem ? Merci d'avance.

(BTW il y a un MSDN QA qui suggère que mon code devrait fonctionner et que je suis toujours bloqué.)

Était-ce utile?

La solution

Théoriquement, cela devrait fonctionner:

private void mcAI_Open(ref bool Cancel)
{
    Cancel = true;
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top