Cómo crear un grupo de carpetas de contactos en Outlook a través de C#

He estado buscando por un tiempo, cómo crear un Grupo de contacto en la vista de Outlook de la libreta de direcciones. En este caso no me refiero a un grupo de contacto para enviar un correo electrónico a mucha gente (es decir, no es una lista de correo). Es solo la vista de la libreta de direcciones dentro de Outlook. Un grupo puede contener un número de Carpetas de contactos.

¿Alguien tiene una idea o alguna información para resolver este problema a través de C #?

preguntado el 12 de junio de 12 a las 09:06

1 Respuestas

Necesitas aprovechar los Contactos NavigationModule (ContactsModule) Via Explorer.NavigationPane para controlar el Grupos de contacto.

Outlook.Folder contacts = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts) as Outlook.Folder;
Outlook.ContactsModule module = Application.ActiveExplorer().NavigationPane.Modules.GetNavigationModule(Outlook.OlNavigationModuleType.olModuleContacts) as Outlook.ContactsModule;
Outlook.NavigationGroup group = module.NavigationGroups.Create("Custom Group"); // creates contact group
group.NavigationFolders.Add(contacts.Folders.Add("Business Contacts")); // adds folders to group

Respondido el 13 de junio de 12 a las 15:06

Solo una pequeña sugerencia, si alguien más tiene el mismo problema: si crea una nueva carpeta mediante programación y la vista de la carpeta de grupo (por ejemplo, Mis tareas) no se actualiza correctamente, esta solución también lo soluciona (simplemente recuperando el grupo de navegación predeterminado GetDefaultNavigationGroup ) - mnkypete

@mnkypete Esto no funciona en Outlook 2010. Llamar a GetDefaultNavigationGroup no hace nada. La lista de carpetas no se actualiza (al menos para los contactos). - Alex

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.