Compartilhar via


Criar uma lista de distribuição

Este exemplo mostra como criar uma lista de distribuição e exibi-la ao usuário.

Exemplo

Observação

O exemplo de código a seguir foi tirado do artigo Programação de aplicativos do Microsoft Office Outlook 2007.

No exemplo de código a seguir, CreateDistributionList cria uma lista de distribuição chamando o método CreateItem (OlItemType) para criar um objeto DistListItem. Em seguida, ele cria um objeto Table e chama o método GetTable (Object, Object) para localizar todos os contatos na pasta Contatos padrão para os quais o valor da propriedade Subject é "Top Customer" e o valor da propriedade Email1Address não está vazio. Depois que todos os contatos são identificados, o nome Email1Address é adicionado como uma coluna à Table. CreateDistributionList cria um objeto Recipient usando o método CreateRecipient (String) do objeto NameSpace. CreateDistributionList finalmente exibe a lista de distribuição "Top Customers" para o usuário.

Observação

Você deve passar um objeto Recipient resolvido como um parâmetro para o método AddMember (Recipient) do objeto DistListItem. Para resolver um objeto Recipient, use o método Resolve().

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 CreateDistributionList()
{
    Outlook.DistListItem distList = Application.CreateItem(
        Outlook.OlItemType.olDistributionListItem)
        as Outlook.DistListItem;
    distList.Subject = "Top Customers";
    //Find top customer category in Contacts folder
    string filter = "[Categories] = 'Top Customer'"
        + " AND [Email1Address] <> ''";
    Outlook.Table table =
        Application.Session.GetDefaultFolder
        (Outlook.OlDefaultFolders.olFolderContacts).
        GetTable(filter, Outlook.OlTableContents.olUserItems);
    table.Columns.Add("Email1Address");
    while (!table.EndOfTable)
    {
        Outlook.Row nextRow = table.GetNextRow();
        Outlook.Recipient recip =
            Application.Session.CreateRecipient(
            nextRow["Email1Address"].ToString());
        //Resolve the Recipient before calling AddMember
        recip.Resolve();
        distList.AddMember(recip);
    }
    distList.Display(false);
}

Confira também