Data Binding
- 3 minutes to read
The scheduler operates with appointments, time regions, and resources. These objects may persist if the scheduler is bound to data. The scheduler can operate in bound and unbound mode.
Unbound Mode
If you do not bind a data source to the SchedulerControl component, it maintains appointments and resources internally. To manage Scheduler items in code, access the corresponding collections using the properties listed in the following table:
Bound Mode
To use the Scheduler in the data-bound mode, specify bindings to external data sources and define mappings which map data fields to corresponding properties of the Scheduler’s items. Mappings are different if an appointment has a single associated resource or several resources (shared resources).
Review the First Lesson - Create a Simple Scheduling Application topic for a basic example of the data-bound scheduler.
Important
Each binding requires a corresponding mapping to work.
Tip
You can operate in a mixed mode, with appointments contained in the external data source or MVVM data model and bound to the DataSource.AppointmentsSource property, and labels, statuses or resources created in code or XAML added to the respective collections.
The following table lists properties specific to data binding:
Member | Description |
---|---|
DataSource | An object that specifies data sources and mappings for the Scheduler objects. |
DataSource.AppointmentsSource | Gets or sets a collection of objects containing appointment information. This is a dependency property. |
DataSource.ResourcesSource | Gets or sets a collection of objects containing resource information. This is a dependency property. |
DataSource.AppointmentLabelsSource | Gets or sets a collection of objects containing appointment label (category) information. This is a dependency property. |
DataSource.AppointmentStatusesSource | Gets or sets a collection of objects containing appointment status information. This is a dependency property. |
DataSource.TimeRegionsSource | Gets or sets a collection of objects containing time region information. This is a dependency property. |
AppointmentMappings | Provides information on the appointment properties’ mapping to data fields. |
ResourceMappings | Provides information on the resource properties’ mapping to data fields. |
AppointmentLabelMappings | Provides information on the appointment label properties’ mapping to data fields. |
AppointmentStatusMappings | Provides information on the appointment status properties’ mapping to data fields. |
TimeRegionMappings | Provides information on the time region properties’ mapping to data fields. |
CustomFieldMapping | Provides information on custom property mapping to appropriate data fields. |
SchedulerControl.AppointmentsUpdated | Occurs after Scheduler appointments are updated. |
DataSource.ResourceSharing | Gets or sets a value indicating whether an appointment can be shared between multiple resources. This is a dependency property. |
AppointmentResourceIdCollectionXmlPersistenceHelper | Provides methods to load resource ID’s from XML and export them in the same format they are stored in the bound data source. |
DataSource.CreateSourceObject | Allows you to set the source object for a newly created appointment. |
Examples
How to: Create Regular and Recurrent Appointments at the View Model Level