Scheduler for Silverlight and WPF consists of the following controls and components, which provide all of the functionality for a scheduling application:
The C1Scheduler Control
The C1Scheduler control is a fully functional schedule that allows users to add, edit, and manage their appointments. It is composed of two main parts:
The C1Calendar Control
C1Calendar control is a part of C1.WPF.Schedule assembly.
This is a refactored version of the old C1MultiMonthCalendar control. It is used to create a calendar in XAML, showing multiple months and allowing users to select a specific date interactively. Some properties such as Time and DateTime have been removed from C1Calendar.The Date property has been renamed to the SelectedDate, etc.
The C1CalendarItem control can be used only as a part of C1Calendar control and won't work as a standalone control.
The C1ScheduleStorage Component
The C1ScheduleStorage component handles all of the data operations for the C1Scheduler control. Users do not have to create the C1ScheduleStorage component from the code, as it is automatically created by the C1Scheduler control.
The C1ScheduleStorage component contains specific data storages for appointments, resources, contacts, labels, and statuses, which work on the data layer to provide data to the scheduling application. The C1ScheduleStorage component contains some separate data storages as listed in the following table:
Data Storage |
Description |
Storage for appointment data. |
|
Storage for category data. |
|
Storage for contact data. |
|
OwnerStorage |
Storage for calendar owners data. |
Storage for label data. |
|
Storage for status data. |
|
Storage for resource data. |
When providing data to these storages, it is necessary to specify mappings between data fields in the datasource and their interpretation in the storage.
All storages are inherited from the BaseStorage class, which provides all the basic functionality required for data binding. To bind a storage to a specific data table (or another data object) it is necessary to set its C1BindingSource.DataSource and C1BindingSource.DataMember properties, and then set the mappings for the properties to corresponding data fields in the bound datasource. For example, if the bound data source contains a field called EmployeeName, you should set the ContactStorage.Mappings.TextMapping.MappingInfo.MappingName property to the name of this field.
The BaseStorage component has almost the same functionality as the System.Windows.Forms.BindingSource component, but does not depend on System.Windows.Forms namespace.
Note: The CategoryStorage, LabelStorage and StatusStorage storages contain a predefined set of standard items. |