The Actipro Blog

All the latest UI control development news from Actipro

Preview of new advanced MonthCalendar for WPF

We are nearly finished with work on a new MonthCalendar control, which will be included with Editors for WPF. This version offers several features not found in the existing MonthCalendar found in the Shared Library, such as multiple selection and the ability to zoom out/in to navigate to different months, years, or decades. 

Selection

By default only a single date can be selected, but there are several selection modes that allow multiple dates to be selected. The number of selected dates can be restricted, or can be restricted to a contiguous range. By handling the SelectionChanging event, the selection can easily be customized or canceled before the changes are committed. This allows for any custom selection logic to be implemented. Additionally, the week numbers and/or day of week headers can be clicked to select the associated days of the visible month.

MonthCalendarExtended

The MonthCalendar using Extended selction after holding down the Control key and clicking Thusday and Week 16.

The SelectedDates property is actually a collection of DateRange objects, which are used to aggregate and optimize the selected dates. Regardless, you can still iterate over the individual dates as needed.

Navigation

Like the WinForms MonthCalendar, you can navigation to other dates by zooming out and/or in, with animations to that effect. Clicking the title text will zoom out, such as zooming from the month view (seen above) to the year view (seen below). The year view can be used to quickly navigation to a month in the given year, and likewise for the associated decade and century. Clicking on a month in the year view will zoom in and presented the specified item in a month view.

MonthCalendarYearView

The MonthCalendar displaying a year view.

Disabled Dates

Certain dates or date ranges can be explicitly disabled, which prevents them from being selectable, using the DisabledDates collection. Also, you can easily disable any day of the week, such as preventing any Thursday from being selected. Any dates that are disabled, are automatically excluded from SelectedDates.

Summary

We will also be including the various themes for the MonthCalendar, as well as providing several customizations options for the look/feel of the control. The MonthCalendar will easily integrate into the DateTimeEditBox, making date entry a snap.

Filed under: Actipro, In development, WPF

Comments (2) -

May 16, 2009 at 13:03  

David Mullin United States

This is very cool.  What about being able to view multiple months in the popup calendar at the same time?  Like this month and next month, for instance?  We'd still like to be able to do that...

May 17, 2009 at 09:54  

Bill Henning (Actipro) United States

Not quite yet, however as we worked on the new MonthCalendar we did so planning for eventually adding support for this.  MonthCalendar hosts a single CalendarView right now, but when we add this feature in the future (it's on the TODO list) it will add more CalendarViews into rows and columns.

Pingbacks and trackbacks (1)+

Comments are closed