Latest 8.8 release of DotNetBar for Windows Forms includes all new Year view for Scheduling/Calendar control. In this view you can see all calendar days with appointments for whole year. This is what it looks like:
Note the marked dates on calendar. They indicate that there are appointments on those dates. When day is clicked control will automatically take you to the view you specify to see details for that day or you can choose to execute any custom action you wish.
CalendarView.YearViewStartDate and CalendarView.YearViewEndDate will determine the number of months displayed in the calendar. The maximum number of displayable months is currently set to 120. Why 120 you might ask? Why is winter cold? 🙂
Month days that have CalendarItems associated with them will, by default, have their date text displayed in Bold. The background coloring of these items can be set to several different built-in styles (via the CalendarView.YearViewAppointmentLinkStyle property). Day cells that do not have associated CalendarItems are, by default, displayed in the normal text and background, color and style.
There are two types of day cells displayed in the calendar months – those that have associated CalendarItems (Appointments or CustomCalendarItems), and those that do not.
Day cells that have CalendarItems associated with them will, by default, have their date text displayed in Bold. The background coloring of these items can be set to several different built-in styles (via the CalendarView.YearViewAppointmentLinkStyle property).
In the above example, cells with associated CalendarItems are being displayed in the blue diagonal gradient with bolded text. All others, displayed in their normal defaults, signify no associated CalendarItems.
CalendarView.YearViewAppointmentLink – This property establishes how the user interacts with those cells that contain Appointments (or CalendarItems in general). The possible settings for this property are defined in the eYearViewDayLink enum, and are as follows: “None”, “Click”, “CtrlClick”, and “DoubleClick”. You can combine these such that, for instance, a Click or a DoubleClick will cause the link to be activated. The default is eYearViewDayLink.Click. This can be done like the following:
CalendarView.YearViewAppointmentLink = (eYearViewDayLink.CtrlClick | eYearViewDayLink.DoubleClick);
CalendarView.YearViewNonAppointmentLink – This property establishes how the user interacts with those cells that do not contain Appointments (or CalendarItems in general). The possible settings for this property are, again, defined in the eYearViewDayLink enum, and may be combined to give the desired interaction. The default is eYearViewDayLink.DoubleClick.
When a selection link is established (via the means established in the above YearViewApplintmentLink and YearViewNonAppointmentLink properties), you can have any Calendar display view activated by default when the corresponding day cell is selected. This can be accomplished via the CalendarView.YearViewLinkView property.
The CalendarView.YearViewLinkView property sets which view (None, Day, Week, Month, or TimeLine) is “linked” to the calendar day cell selection. When enabled, clicking (or hitting enter or the Spacebar) on a cell will cause the LinkView to be activated and positioned at the day/time previously selected in the YearView. The default is eCalendarView.Day.
There are many other very useful customization options and you can find all details in Knowledge Base Schedule control article under “Year View” section.
Schedule control in DotNetBar includes 5 different views for your appointments and each of them can be customized to fit your need. I think this is one of the best Schedule controls available. We are working to make it the best Schedule control in the world and we will not stop until it is. The plot is thickening 🙂 Stay tuned.