New to Telerik UI for WPF? Start a free 30-day trial

How to configure the VisibleRange

Updated on Sep 23, 2026

The built-in RadScheduleView ViewDefinitions have specific ways to determine what the visible range will be when the CurrentDate property is set:

TypeVisibleRangeStartVisibleDays
DayViewDefinitionCurrentDate1
WeekViewDefinitionThe first day of the week, containing CurrentDate7
MonthViewDefinitionThe first day of the first week of the month, containing CurrentDate42
TimelineViewDefinitionCurrentDate7

The VisibleRangeEnd is VisibleRangeStart+VisibleDays for all view definitions.

The easiest way to create a WeekViewDefinition that behaves like the DayViewDefinition is to use a DayViewDefinition and set its VisibleDays=7.

For advanced customization of the VisibleRange the ViewDefinitionBase class provides two virtual methods:

C#
protected virtual DateTime GetVisibleRangeStart(DateTime currentDate, CultureInfo culture, DayOfWeek? firstDayOfWeek) { return DateTime.Now; }

protected virtual DateTime GetVisibleRangeEnd(DateTime currentDate, CultureInfo culture, DayOfWeek? firstDayOfWeek) { return DateTime.Now; }

For example, the following class represents a MonthViewDefinition that starts from the first week of CurrentDate:

C#
public class CustomMonthViewDefinition : MonthViewDefinition
{
    protected override DateTime GetVisibleRangeStart(DateTime currentDate, CultureInfo culture, DayOfWeek? firstDayOfWeek)
    {
        return CalendarHelper.GetFirstDayOfWeek(currentDate, firstDayOfWeek.Value);
    }
}

Since VisibleDays is 42 by default, this CustomMonthViewDefinition will display 6 weeks, as the standard MonthViewDefinition does.

Here is how to use the CustomMonthViewDefinition:

XAML
<telerik:RadScheduleView>
    <telerik:RadScheduleView.ViewDefinitions>
        <local:CustomMonthViewDefinition />
    </telerik:RadScheduleView.ViewDefinitions>
</telerik:RadScheduleView>
Not finding the help you need?
Contact Support