Compartilhar via


Usar a caixa de diálogo Selecionar Nomes para obter e atribuir destinatários a um compromisso

Este exemplo mostra como usar a caixa de diálogo Selecionar Nomes para obter e atribuir destinatários a um item de compromisso.

Exemplo

Observação

O exemplo de código a seguir é um trecho de Programar aplicativos para o Microsoft Office Outlook 2007.

Para exibir a caixa de diálogo Selecionar Nomes, chame o método Display() do objeto SelectNamesDialog. Depois que a caixa de diálogo Selecionar Nomes é exibida para o usuário, a execução de código é interrompida até que o usuário clique em OK ou feche a caixa de diálogo. Para definir destinatários iniciais a exibir na caixa de diálogo, ou para obter os destinatários selecionados na caixa de diálogo, use a propriedade Recipients do objeto SelectNamesDialog. Isso retornará um conjunto destinatários associado a SelectNamesDialog. Para adicionar um objeto Recipient ao conjunto Recipients de SelectNamesDialog, use o método Add para o conjunto e especifique a propriedade Type do objeto Recipient.

No exemplo de código a seguir, DemoSelectNamesDialogRecipients cria um objeto AppointmentItem e define algumas das suas propriedades. Em seguida, cria um SelectNamesDialog e usa o método SetDefaultDisplayMode(OlDefaultSelectNamesDisplayMode) para configurar um modo de exibição de reunião para a caixa de diálogo Selecionar Nomes. O exemplo preenche o seletor de destinatário Resource com a cadeia "Conf Room 36/2739". Depois que a caixa de diálogo é exibida para o usuário, o código enumera o conjunto Recipients que é associado a essa instância de SelectNamesDialog e adiciona esses destinatários ao compromisso que foi criado. Por fim, o exemplo a exibe a solicitação de reunião para o usuário.

Se usar o Visual Studio para testar este exemplo de código, adicione primeiro uma referência ao componente da biblioteca de objetos do Microsoft Outlook 15.0 e especifique a variável do Outlook quando importar o namespace Microsoft.Office.Interop.Outlook. A instruçãousing não deve ocorrer diretamente antes das funções no exemplo de código, mas deve ser adicionada antes da declaração de classe pública. The following line of code shows how to do the import and assignment in C#.

using Outlook = Microsoft.Office.Interop.Outlook;
private void DemoSelectNamesDialogRecipients()
{
    Outlook.AppointmentItem appt = Application.CreateItem(
        Outlook.OlItemType.olAppointmentItem)
        as Outlook.AppointmentItem;
    appt.MeetingStatus = Outlook.OlMeetingStatus.olMeeting;
    appt.Subject = "Team Morale Event";
    appt.Start = DateTime.Parse("5/17/2007 11:00 AM");
    appt.End = DateTime.Parse("5/17/2007 12:00 PM");
    Outlook.SelectNamesDialog snd =
        Application.Session.GetSelectNamesDialog();
    snd.SetDefaultDisplayMode(
        Outlook.OlDefaultSelectNamesDisplayMode.olDefaultMeeting);
    Outlook.Recipient confRoom =
        snd.Recipients.Add("Conf Room 36/2739");
    // Explicitly specify Recipient.Type.
    confRoom.Type = (int)Outlook.OlMeetingRecipientType.olResource;
    snd.Recipients.ResolveAll();
    snd.Display();
    // Add Recipients to meeting request.
    Outlook.Recipients recips = snd.Recipients;
    if (recips.Count > 0)
    {
        foreach (Outlook.Recipient recip in recips)
        {
            appt.Recipients.Add(recip.Name);
        }
    }
    appt.Recipients.ResolveAll();
    appt.Display(false);
}

Confira também