The list below describes recent changes and additions to MindFusion.Scheduling for WPF:
Recurrences can be rescheduled interactively by holding down the RescheduleRecurrenceKey while dragging a recurrent item. The control tries to preserve the current pattern of the recurrence when possible. Otherwise, the recurrence may be modified to accommodate to the new start and end times of the modified item. Interactive rescheduling is not registered in the undo history.
A new built-in theme is available in MindFusion.Scheduling for WPF - the Light theme. It is available through the ThemeType enumeration.
Several new properties and events have been added to the control:
There is no separate trial build of the control assemblies anymore. Instead, set the LicenseKey property of the individual components to disable the component's evaluation mode and stop displaying trial messages. If your application contains more than one control by MindFusion, you could call MindFusion.Licensing.LicenseManager.AddLicense(key) to specify the key once instead of setting it per each control. License key strings are listed on the Keys & Downloads page at MindFusion's customer portal.
MindFusion.Scheduling for WPF now includes support for Visual Studio 2013. The installer can create VS2013 toolbox palette for the component, and can optionally install VS2013 sample projects.
The cells and headers in the data grid can now be customized through a set of new properties: CellBorderBrush, CellBorderThickness, HeaderBackground, HeaderBorderBrush, HeaderBorderThickness, HeaderFontSize, HeaderForeground, and HeaderMargin. The new ColumnCreating event can be used to replace a grid column with a custom one.
Five new holiday providers have been added to the MindFusion.HolidayProviders.dll assembly, namely AustraliaHolidayProvider, FranceHolidayProvider, GermanyHolidayProvider, RussiaHolidayProvider, and UKHolidayProvider.
The WorkTimeStartHour and WorkTimeEndHour properties have been renamed to WorkTimeStart and WorkTimeEnd respectively and are now of type TimeSpan to allow more flexible work time intervals. In addition, the new WorkTimeStarts and WorkTimeEnds properties can be used to specify different work time intervals for the different days in the view. The new ColumnHeaderTemplate property can be used to customize the column headers by using a DataTemplate object.
The Week Range view can now display week numbers, similarly to the Single Month view. The week numbers can be enabled through the WeekHeaderPosition property and can be customized through the RotateWeekHeaderTexts, WeekHeaderFormat, WeekHeaderStyle, and WeekNumbersHeaderWidth properties.
The row headers can be customized through the new RowHeaderTemplate property.
MindFusion.Scheduling for WPF now includes support for Visual Studio 2012. The installer can create VS2012 toolbox palette for the component, and can optionally install VS2012 sample projects.
The ItemPresenter class now provides the start and end time of the represented item fragment through the new StartTime and EndTime properties. In addition, derived classes can override the new OnStartTimeChanged, OnEndTimeChanged, and OnItemPropertyChanged methods to get notified when the StartTime or EndTime properties change or when any property of the underlying item changes.
The Recurrence class now exposes a new event - ValidateOccurrence, which can be used to validate and customize the occurrences of a recurrence pattern.
The Calendar control now supports virtualization and is able to handle hundreds of items. The virtualization is always enabled. When using custom item or cell presenters, you need to pay special attention to the fact that those presenters can be subsequently reused by the virtualization engine for other items or cells. When a CellPresenter is reused, its StartTime and EndTime properties are updated to reflect the start and end time of the new cell. This causes the OnStartTimeChanged and OnEndTimeChanged methods to be invoked. When an ItemPresenter is reused its Item property is updated and its OnItemChanged method is invoked.
Delayed scrolling can now be enabled through the new DelayScroll property. When scrolling is delayed calendar views do not update immediately during scrollbar interactions. Instead the control displays a small tooltip with information about the new scroll position. The contents of the tooltip can be a date or an index, depending on the specific view and the scrollbar being modified. When the scrollbar interaction is complete, the view updates to reflect the new scroll position.
The new KeepItemOrder property can be used to prioritize the newly created items during collision processing.
New exporter has been added - ExcelExporter, which enables exporting calendars to the Open Office XML format.
Many Calendar properties have been changed to dependency properties. These include Schedule, Date, EndDate, and more.
The performance of all views has been substantially improved.
A completely new assembly has been added to MindFusion.Scheduling for WPF - MindFusion.DataViews.Wpf. The assembly contains two new controls - ActivityChart and ResourceChart. The Activity Chart and Resource Chart sections in this documentation discuss those controls in more details.
The implementations of the new IHolidayProvider interface can now be used to supply culture-specific lists of holidays. The USHolidayProvider can be used to supply the major holidays in United States for a specific time interval.
Resource headers in the Resource view can now be customized through templates by using the new ResourceHeader class.
If the UndoEnabled property is set to true, MindFusion.Scheduling for WPF tracks changes done on the schedule and allows undoing and redoing them later by calling the Undo and Redo methods of the Schedule class respectively. Multiple changes could be recorded as a single undoable operation by enclosing them between StartCompositeOperation and CommitCompositeOperation calls. It is also possible to create custom undoable operations by deriving from the Command class and calling ExecuteCommand with the custom command as argument.
New assemblies targeting the 4.0 .NET Framework are now available. Additionally all samples provide versions for Visual Studio 2010.
The cells in the various views can now be customized through CellPresenter class. For an example on how to do this take a look at the two new samples - CustomResourceCells and Holidays.
The Resource view is now available in MindFusion.Scheduling for WPF. This view displays the distribution of items over a period of time for particular contacts, locations, tasks or resources. The view can be activated by setting the CurrentView property of the Calendar class to ResourceView. For more information about the view, check Resource View. For additional information on how to set up the view, refer to the ResourceViewSettings class. Many new samples illustrating how to use the resource view in different scenarios have been added.
The appointments in the calendar are reimplemented through ItemPresenter class. For additional information on how to do this, check Customizing the Appearance of Items. Also take a look at the new tutorial Tutorial 5: Custom Item Templates and the new sample - CustomItemTemplates.
MindFusion.Scheduling for WPF now provides report generation functionality. All the necessary classes can be found in the new MindFusion.Scheduling.Reporting namespace. For additional information on how to create reports and how to print and preview them, check the new Tutorial 6: Creating and Printing Reports and the new samples. Additionally, you can take a look at the core class in the reporting API - Report.
The new OutlookImporter and OutlookExporter classes can be used to exchange item, task and contact data between MindFusion.Scheduling for WPF and Microsoft® Outlook®. Check the new Tutorial 7: Exchanging Data with Microsoft Outlook for information on how to do this.