There is a need in my current application for a user to “filter down” to a specific reoccurring appointment, and only display occurrences for that particular Appointment pattern within the scheduler control. I’ve attempted to accomplish this by creating a new form with a separate SchedulerControl, and only adding the single appointment that the user is trying to view:
public OccurrenceCalcForm(Appointment appointment)
{
InitializeComponent();
OccurrenceSchedulerControl.Storage.Appointments.CustomFieldMappings.Add(new DevExpress.XtraScheduler.AppointmentCustomFieldMapping("Inactive", "Inactive"));
OccurrenceSchedulerControl.Storage.Appointments.CustomFieldMappings.Add(new DevExpress.XtraScheduler.AppointmentCustomFieldMapping("StandingOrderKEY", "StandingOrderKEY"));
OccurrenceSchedulerControl.Storage.Appointments.Add(appointment);
OccurrenceSchedulerControl.Refresh();
}
But the difficulty is that where the appointment has exception of type ChangedOccurrence, where specific properties on these individual occurrences are different from the pattern, they aren’t displayed within the control as in the screenshot below (there are actually changed exceptions to this daily appointment on the 24th and 26th with a different start date, but they are not displayed):

Both exceptions can be correctly calculated and obtained from the Appointment reference using the GetExceptions() method, but it is important that they also be displayed to the user within the control, rather than not appearing at all. Is there a method to have a SchedulerControl display all occurrences (including exceptions) for a single recurring Appointment within its storage?
Any alternative approach suggestions are welcome. Thanks for your help!
You can display them by handling CustomDrawAppointmentBackground and CustomDrawAppointment events. DevExpress provides sample code that does this (ignore that part that translates deleted occurrences to changed occurrences).