Using Redemption within a .Net Outlook plugin. When a recurring item is deleted, I can trap the ItemChanged Event but the item has already been added to the Exceptions list. If my logic decides that the item shouldn't have been removed, is there a way of undeleting that recurrence? (I can stop the series from being deleted as that's caught by BeforeItemMove and has the Cancel boolean, ItemChange is after the operation and thus too late).
2 Answers
It looks like you are interested in the AppointmentItem.BeforeDelete event which is fired before an item is deleted. In order for this event to fire when an email message, distribution list, journal entry, task, contact, or post are deleted through an action, an inspector must be open.
Remember, you can always repurpose built-in ribbon controls. See Temporarily Repurpose Commands on the Office Fluent Ribbon for more information.
Also, you can set a keyboard hook to be sure all ways are handled.

- 47,483
- 3
- 24
- 45
-
Thank you - As you say, BeforeDelete is for an open inspector and BeforeItemMove is for the series object not individual items. I can get the BeforwDelete event to trigger from the appointment item delete button, but the context menu "Delete Occurrence" doesn't trigger that so I'll have to try the override idea. – Richard Turner Jul 09 '19 at 14:05
-
For the `Explorer` window you may repurpose ribbon buttons and handle keyboard shortcurts. Following that way you may cover all possible scenarious. – Eugene Astafiev Jul 09 '19 at 14:11
Neither Redemption nor OOM expose that functionality - once an exception (deleted or modified) is created, the only way to undo it is to wipe it out on the MAPI level. Would be a good idea to expose that through the RDOException and/or RDORecurrencePattern objects. Send an email to redemption (at) dimastr (dot) com and we can discuss this offline.

- 62,942
- 4
- 53
- 78