#vsto #outlook-addin
#vsto #outlook-добавление
Вопрос:
Я хочу добавить некоторые пользовательские свойства в AppointmentItem. Это отлично работает для «обычных» AppointmentItems.
Пример:
myAppointment.ItemProperties.Add("MyId", Outlook.OlUserPropertyType.olText, false, 1);
MyId = (Outlook.UserProperty)myAppointment.ItemProperties["MyId"];
MyId.Value = myMeeting.id;
meetingId = myMeeting.id;
myAppointment.Save();
Даже когда я перезапускаю Outlook, я могу извлечь эти свойства из AppointmentItem следующим образом:
MyId = (Outlook.UserProperty)theCurrentAppointment.ItemProperties["MyId"];
Пока никаких проблем.
Теперь, когда я использую тот же метод в AppointmentItems, которые представляют ОДИН AppointmentItem в серии повторяющихся назначений, он либо не сохраняет, либо не может извлечь свойство MyItem.
У кого-нибудь есть идеи, почему он ведет себя по-другому, когда это повторяющийся AppointmentItem?
Комментарии:
1. После некоторого расследования я выяснил, что «обычный» AppointmentItem содержит «MyId» без проблем и МНОЖЕСТВО свойств ItemProperties, в то время как повторяющийся AppointmentItem содержит гораздо меньше свойств ItemProperties (всего 7) среди прочих свойство «AppointmentItem». Но когда я попытался назначить его, я получаю следующее исключение: System.Runtime. Службы взаимодействия. COMException: «Mitglied nicht gefunden. (Ausnahme von HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))»
2. Если вы устанавливаете свойство для экземпляра повторяющегося действия, вы создаете исключение. Вы уверены, что в следующий раз получите доступ к тому же исключению? Или вы имели в виду установить свойства для основного назначения, а не для вхождения?
3. Кроме того, я убедился, что никаких ссылок на повторяющийся AppointmentItem не осталось. Для этого я обрабатываю событие закрытия в инспекторе и обнуляю статическую ссылку на AppointmentItem
4. @DmitryStreblechenko я открываю событие в Outlook, а затем нажимаю кнопку моего дополнения, чтобы добавить свойство. Итак, я подумал, что получу доступ к тому же событию, а не к основной встрече, когда я закрою и снова открою событие в Outlook. итак, вопрос в том, как я могу убедиться, что у меня есть доступ к правильному appointmentitem?
5. @DmitryStreblechenko и noni хотят устанавливать свойство не для основного элемента, а для вхождения.