This is a simple example of XtraScheduler bound to XPO Session displaying Gantt view. This project also utilizes the ResourcesTree control to display an hierarchy of resources and the SplitContainer control to allow resizing of Scheduler and ResourceTree controls.
By default, XPO uses MS Access OLEDB provider, assumes that the database has the same name as the application and resides in the application folder. If the database does not exist, XPO creates it.
Please note the XPO specifics - to which fields appointment, resource and dependency identifiers are mapped:
this.schedulerStorage1.Appointments.Mappings.AppointmentId = "Oid";
this.schedulerStorage1.Resources.Mappings.Id = "Oid";
this.schedulerStorage1.Resources.Mappings.ParentId = "ParentResource!Key";
this.schedulerStorage1.AppointmentDependencies.Mappings.DependentId = "DependentApt!Key";
this.schedulerStorage1.AppointmentDependencies.Mappings.ParentId = "ParentApt!Key";
this.schedulerStorage1.AppointmentDependencies.Mappings.Type = "Type";
and how the XPO objects themselves are implemented.
The following events of the SchedulerStorage are handled in a special way:
AppointmentDependenciesInserted
AppointmentDependenciesChanged
AppointmentsInserted
AppointmentsChanged