Version

Month View (XamScheduler)

Purpose

This topic explains how data is presented in the XamScheduler's month view.

Required Background

Topic Purpose

This topic provides an overview of the XamScheduler control.

This topic explains how to bind the control to a data source using ScheduleListDataSource.

Overview

The month view of the XamScheduler is visualizing the days of an entire month. Each day is represented by a cell which may contain up to three activities. The month view also supports the concept of the "selected date" which is displayed using different styling (foreground color, background color, font size or font style). Initially the selected date is the device’s current date but you can set or obtain the selected date using the SelectedDate property.

You can navigate through the months by swiping over the month’s days. The scrolling direction is configurable using the MonthViewScrollDirection property. The range of months accessible by the control is defined using the MinimumDate and MaximumDate properties. These above properties can be set in any order and even illogically (for example the MinimumDate property may have greater value than the MaximumDate property). The control will normalize the dates before they are used internally. The default values for these properties is a date range that spans from 5 years prior to the current date to 5 years after the current date.

Note
Note

Specifying a large working date range (greater than 100 years) when running on the Android platform can have a negative impact on the control’s performance. Also this may result in arbitrarily clipping months at the end of the range due to some limitations in the Android platform.

The following screenshot shows the month view along with its visual elements:

Scheduler_MonthView_01.png

  1. Month header (containing current month and year)

  2. Day of week header

  3. Week number

  4. Leading days (from previous month)

  5. Trailing days (from next month)

  6. Current day (displayed with different style)

  7. Activity indicators. These indicators are rendered on days occupied with activities. Up to three activity indicators are rendered. The indicators are drawn using the color scheme set on the associated resource.

  8. Current month days

Split Mode

When the control displays the month view the space occupied can be split and an agenda view can be shown along with the month view. The agenda view shows the activities of the currently selected day or all days' activities depending on the value set on the AgendaViewAppointmentScope property. The agenda view can be rendered under the month view, at the right side of the month view or completely hidden to allow the month view to occupy all the space available to the control. By default the control positions the two views automatically based on its size:

  • If the control’s width is bigger than its height the two views are rendered side by side.

  • If the control’s height is bigger than its width the agenda view is rendered under the month view.

You have the option to turn off this automatic repositioning and sets a static views layout which is described in the table below.

The following screenshot shows visual elements of the month view combined with an agenda view:

Scheduler_MonthView_02.png

  1. Activity’s subject

  2. Activity’s location

  3. The resource’s color associated with this activity

  4. Start and end time associated with this activity

Configuring

The following table maps some configurable aspect/behavior of the month view to the property/method that is responsible for:

Aspect/Behavior Description Property/Method

Activities' Presentation

You can choose whether the activities will be rendered as small colored squares (SquareIndicator) or big rectangles containing their subject (ActivitySubject).

Agenda view visibility

You can specify whether the control should render an agenda view along with the month view.

Swipe direction

You can configure the swipe direction used to navigate through the months.

Agenda view’s content

You can customize whether the agenda view should show only selected day’s activities or all days' activities.

Leading days

By default the previous month’s days are not visible but you can configure their visibility using this property.

Trailing days

By default the next month’s days are not visible but you can configure their visibility using this property.

Day of week header

You can show or hide the header containing the days of week.

Week number

You can show or hide the column which displayes the week numbers.

Horizontal separators

You can show or hide the horizontal separators between the weeks.

Vertical separators

You can show or hide the vertical separators between the days.

Change agenda view placement

You can position the agenda view below or at the right side of the month view.

Dynamically agenda view placement

Configure whether the agenda view should change its placement automatically when the display’s aspect ratio changes.

Bring specific day into view

Invoke this method to ensure the specified day is visible in the month view

Bring specific month into view

Invoke this method to ensure the specified month is visible in the month view

Events

The following table maps some of the user interactions to the events that are raised by the control:

User Interaction Description Event

Date selected

Occurs when the selected date in the month view has changed.

Activity tapped

Occurs when tapping on an activity in the month view or in the integrated agenda view.

Activity selected

Occurs after an activity is selected in the month view or in the integrated agenda view.

Month header tapped

Occurs when the month header is tapped.

Day tapped

Occurs when a day is tapped.

Day of week header tapped

Occurs when the day of week header is tapped.

Week number tapped

Occurs when a week number is tapped.

Styling

The month view is highly configurable in terms of fonts, sizes and colors. There are a lot of properties at your disposal to configure this view and all of their names are prefixed with MonthView so that it is easier for you to find them. For example:

Related Topics

The following topics provide additional information related to this topic.

Topic Purpose

This topic explains how data is presented in the XamScheduler's agenda view.

This topic explains how data is presented in the XamScheduler's day view.

This topic explains how data is presented in the XamScheduler's week view.

This topic explains the appointment activity type.