Pregunta

Necesito mostrar un formulario personalizado en lugar del formulario de inspector predeterminado para un elemento de cita de Outlook. Quiero hacer esto en C #.

Hay un buen tutorial en devx pero está usando VB, y quiero usar C #. Así que traduje el código a C # y tengo un problema en el que necesito anular el controlador de eventos Open para el AppointmentItem (llamado mcAI ). En la guía mencionada anteriormente, dicen hacer lo siguiente en VB:

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

que para mí se traduce como:

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

(Tenga en cuenta que he intentado esto con y sin un parámetro out y ref , y con / sin un objeto como el primer parámetro también)

Sin embargo, debemos registrar que esto es un evento, por lo que puse este código:

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

Pero no puedo compilar esto porque recibo el error:

  

No hay sobrecarga para que 'mcAI_Open' coincida con el delegado 'Microsoft.Office.Interop.Outlook.ItemEvents_10_OpenEventHandler'

¿Alguna idea sobre cómo debo registrar mi función para el evento Open del AppointmentItem ? Gracias de antemano.

(Por cierto, hay un MSDN QA que sugiere que mi código debería funcionar y aún así estoy atascado.)

¿Fue útil?

Solución

Teóricamente, esto debería funcionar:

private void mcAI_Open(ref bool Cancel)
{
    Cancel = true;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top