Создать встречу в выбранном календаре (VSTO vb.net)

Я разрабатываю надстройку VSTO outlook, которая создаст встречу / встречу. Я использую следующий код для создания встречи / встречи:

Globals.ThisAddIn.Application.CreateItem (Outlook.OlItemType.olAppointmentItem)

Если пользователь щелкает другой календарь (вторая учетная запись или учетная запись, к которой у него есть делегированный доступ), как я могу создать встречу в выбранном календаре?

Я знаю, что могу сделать это с помощью приведенного ниже кода, но как мне получить правильную папку?

items = calendarFolder.Items;
appItem = items.Add(Outlook.OlItemType.olAppointmentItem) as Outlook.AppointmentItem;
appItem.Save();
appItem.Display(true);

person Den88    schedule 19.07.2018    source источник


Ответы (1)


Если вы хотите, чтобы в текущей выбранной папке была создана встреча, используйте Application.ActiveExplorer.CurrentFolder. Если вы хотите, чтобы папка календаря находилась не в магазине по умолчанию, используйте Store.GetDEfaultFolder(olFolderCalendar) (где Store происходит из коллекции Application.Session.Stores). Если вам нужна папка календаря из другого почтового ящика Exchange, вызовите Application.Session.GetSharedDefaultFolder (объект Recipient, необходимый для GetSharedDefaultFolder, может поступать из Application.Session.CreateRecipient).

person Dmitry Streblechenko    schedule 19.07.2018