This is one of the five topics explaining the views of the xamSchedule controls:
xamMonthView (This is the current topic)
This topic is organized in sections as follows:
Introduction
Purpose
Presenting Activities in the Schedule
Configuring the Data Source
User Interaction and Usability
xamMonthView Configuration Options
Related Topics
xamMonthView is one of the five view controls in the XamSchedule family. It presents a week-based view of the calendar, in which the weeks of the month are arranged vertically going from top to bottom and the days of the week are arranged horizontally. (Figure 1)
The purpose of this view is to provide “the bigger picture” of the activities in the schedule. XamMonthView is targeted as a viewing solution for activities in larger timescales. It supports extended user-interaction capabilities enabling users to interact with the activities in a similar way as in other views of xamSchedule. (See User Interaction and Usability below)
The data for the activities and resource calendars displayed in the view is provided by an instance of XamScheduleDataManager. That instance is configured with the DataManager property of xamMonthView.
In XamMonthView, users can:
Navigate through the days and activities using the keyboard
Create activities with one click of the mouse:
by selecting time slot (via keyboard or mouse) and typing directly into it
by clicking the “Click to Add” prompt that is displayed when hovering over a time slot
Resize an activity (that is, change the Start or End of an activity) using the resize grips
Drag an activity from one schedule to another (that is, among different xamSchedule controls associated with the same xamScheduleDataManager)
Click and modify the Subject of an activity
Create a new activity by double-clicking a day (via the activity dialog)
Edit an activity by double-clicking on it
Navigate to an activity using the more activity arrows
Scroll the schedule using the scrollbar or mouse wheel
Delete selected activities
with the Delete key
from the Activity dialog
Scroll and resize the calendar’s group area
Note: because the timeslots in this view are actually days, the interactions like creating or resizing activities set the manipulated Start/End times to 12am (or whatever values are defined for the logical day offset and duration).
ShowWorkingDaysOfWeekOnly enables displaying working days only (Boolean, default: Monday÷Friday). Uses the working days collection. The default setting can be changed from the WorkDays property in XamScheduleDataManager > Settings.
Calendar Display options – several settings managing the display of multiple calendars (similar to xamDayView)
CalendarDisplayMode – the available options are Overlay, Separate and Merged:
In Visual Basic:
monthView.CalendarDisplayMode = CalendarDisplayMode.Overlay
In C#:
monthView.CalendarDisplayMode = CalendarDisplayMode.Overlay;
In Visual Basic:
monthView.CalendarDisplayMode = CalendarDisplayMode.Separate
In C#:
monthView.CalendarDisplayMode = CalendarDisplayMode.Separate;
In Visual Basic:
monthView.CalendarDisplayMode = CalendarDisplayMode.Merged
In C#:
monthView.CalendarDisplayMode = CalendarDisplayMode.Merged;
ShowCalendarCloseButton and ShowCalendarOverlayButton – control the visibility of calendar buttons
The Overlay Button is available only in Overlay Mode and the Close button is not available in Merged Mode.
Visible Days – configures the VisibleDates collection
Populate the VisibleDates collection to display particular days. In xamMonthView the view will render the weeks that contain these dates and display up to 6 weeks.
In Visual Basic:
monthView.VisibleDates.Clear()
monthView.VisibleDates.Add(New System.DateTime(2010, 9, 22))
monthView.VisibleDates.Add(New System.DateTime(2010, 9, 28))
In C#:
monthView.VisibleDates.Clear();
monthView.VisibleDates.Add(new System.DateTime(2010, 09, 22));
monthView.VisibleDates.Add(new System.DateTime(2010,09,28));
ShowWeekNumbers – when True, displays the week numbers relative to the start of the calendar year (Boolean)
This property changes the default header label of the weeks to display the week number.
AllowCalendarGroupResizing – enables/disables the user to resize the calendar groups (Boolean)
The individual calendars or calendar groups (depending of the value set in the CalendarDisplayMode property) have equal size. In case you have more calendars in one group comparing to the other, some of the tab titles may not be visible. When the user is resizing the groups, they continue to have equal size and this leads to a point where their combined size is bigger than the container and at this point a scrollbar will automatically be shown. Double clicking the resizing point will restore the initial size of the calendar groups.
In Visual Basic:
monthView.CalendarDisplayMode = CalendarDisplayMode.Overlay
In C#:
monthView.CalendarDisplayMode = CalendarDisplayMode.Overlay;
In Visual Basic:
monthView.CalendarDisplayMode = CalendarDisplayMode.Separate
In C#:
monthView.CalendarDisplayMode = CalendarDisplayMode.Separate;