I created a procedure to load a student's class schedules into a CalendarInfo as recurring appointments, then save it to a file using the SaveAsXML method, and store that file into a database. It works great as long as the user only chooses a single student at a time. Now my user has a list of students and wants to show multiple student's classes. I can load a single file, but when I load the second file, it clears all the appointments before loading. When I try to use a temporary CalendarInfo and attempt to copy the appoinments one by one, I get a "Appoinments can not belong to more than one CalendarInfo" error. So then I tried using the CopyTo method, clearing the temp CalendarInfo, and then AddRange, but that doesn't seem to want to work either.
Any ideas would be much appreciated.
Later
Art
After reading my post, I might have left the wrong impression. After saving all the students schedules as a CalendarInfo file in the database, I fill a CheckedListBox that the user selects students from, then my app displays their schedule on a UltrDayView. I need to be able to show multiple schedules at once. Hope that clears up any confusion.
UltraDayView supports appointment grouping via its GroupingStyle property. When this property is set to something other than 'None', the control will show each member of the UltraCalendarInfo.VisibleOwners collection as a separate set of time slots and all-day event areas. In your case I think you want to add an Owner to that collection for each student, and also assign a reference to that Owner instance to the corresponding appointment's Owner property. There is s sample that is included with the SDK, 'AppointmentGrouping', that demonstrates this concept.