Dave, for the full functionality the DataTable is required:
- it reads the recurrence fields automatically
- it parses the master events and exceptions
- it copies all the fields from the master to the occurrences and exceptions
This is not possible with custom objects (especially because of the copying).
However, for simple rule expanding you can now use RecurrenceRule.Occurrences() method (since build 8.1.3491:
RecurrenceRule r = RecurrenceRule.Decode("......encoded rule string.....");
List<DateTime> occurrences = r.Occurrences(DateTime.Today, DateTime.Today.AddMonths(1));
This example will return a list of dates (expanded occurrences). Just note a few things:
- you need to supply a DateTime range to Occurrences(from, to)
- it only returns the Date part (the smallest recurrence unit is one day)
You can download the latest build in the sandbox:
http://www.daypilot.org/sandbox/