Repository navigation
Calendar Properties
Marvin E edited this page Dec 25, 2025
·
13 revisions
| Property | Type | Description |
|---|---|---|
DateTime |
The date the Calendar is currently navigated to. | |
DateTime |
The date the Calendar will treat as 'Today'. | |
DateTime |
The inclusive lower bound of the range of dates the NavigatedDate can be set to. |
|
DateTime |
The inclusive upper bound of the range of dates the NavigatedDate can be set to. |
|
NavigationLoopMode |
The behaviour of the calendar when navigating outside the allowed range.
|
|
SelectionType |
Defines how the ChangeDateSelection method processes the selected date.
|
|
SelectionAction |
Defines what happens when a date is selected via the ChangeDateSelection or CommitRangeSelection methods.
|
|
SelectionDirection |
Defines where the newly selected date must be in relation to the earliest and latest selected dates when changing the date selection via the ChangeDateSelection method. If it isn't in the correct place, nothing happens.
|
|
DateTime? |
The start of the range of dates to perform selection on inclusive. If RangeSelectionStart and RangeSelectionEnd are not null, CommitRangeSelection will be called and their values will be set back to null. |
|
DateTime? |
The end of the range of dates to perform selection on inclusive. If RangeSelectionStart and RangeSelectionEnd are not null, CommitRangeSelection will be called and their values will be set back to null. |
|
int |
The number of rows to display. Each row represents one week. | |
bool |
Whether the calendar should automatically determine the minimum number of Rowsneeded to display the month or not. |
|
bool |
Determines if the AutoRows property should display the same number of rows throughout each month in the year. |
|
DayOfWeek |
The day of the week that will be considered as the start of the week. | |
ObservableRangeCollection<DayOfWeek> |
The order that the days of the week are currently displayed in. If CustomDayNamesOrder is not null, this value is set to it. |
|
| CustomDayNamesOrder | ObservableRangeCollection<DayOfWeek> |
When this value is not null, DayNamesOrder is set to this. |
PageStartMode |
How the calendar will use the NavigatedDate to generate the first date in the page (and therefore the subsequent sequence of dates).PageStartMode.FirstDayOfWeek Use the first date in NavigatedDate's Week.PageStartMode.FirstDayOfMonth Use the first date in the first week of NavigatedDate's Month.PageStartMode.FirstDayOfYear Use the first date in the first week of NavigatedDate's Year. |
|
ObservableRangeCollection<T> |
The days currently being displayed by the calendar. Note: Displayed days != displayed dates. For example if DayNamesOrder is "Monday, Monday, Monday Tuesday" and the row is displaying the week of 10th January 2022 - 16th January 2022, there would be 4 days displayed but only 2 dates displayed: 10th January 2022 and 11th January 2022. |
|
ObservableRangeCollection<TEvent> where TEvent : IEvent |
The events/appointments of the calendar. The default class and interface for events have 4 properties:
ICalendarDay's Events property when their DateTime falls between the StartDate and EndDate. If EndDate is null, any day after the StartDate will have that event. |
| Event | Description |
|---|---|
| DateSelectionChanged | This is raised when the SelectedDates collection is changed or modified.It uses the DateSelectionChangedEventArgs class to provide the PreviousSelection and CurrentSelection properties.Note: DateSelectionChanged will still be called if the collection contains the same elements but in a different order. Having duplicates may also cause unexpected behaviour. |
| DaysUpdating | Raised at the start of the 'UpdateDays' method. |
| DaysUpdated | Raised at the end of the 'UpdateDays' method. |