Calendar Class

Represents a control that enables a user to select a date by using a visual calendar display.

Definition

Namespace: Avalonia.Controls
Assembly: Avalonia.Controls (in Avalonia.Controls.dll) Version: 11.3.999
[TemplatePartAttribute("PART_CalendarItem", typeof(CalendarItem))]
[TemplatePartAttribute("PART_Root", typeof(Panel))]
public class Calendar : TemplatedControl
Inheritance
Object    AvaloniaObject    Animatable    StyledElement    Visual    Layoutable    Interactive    InputElement    Control    TemplatedControl    Calendar

Remarks

A Calendar control can be used on its own, or as a drop-down part of a DatePicker control. For more information, see DatePicker. A Calendar displays either the days of a month, the months of a year, or the years of a decade, depending on the value of the DisplayMode property. When displaying the days of a month, the user can select a date, a range of dates, or multiple ranges of dates. The kinds of selections that are allowed are controlled by the SelectionMode property.

The range of dates displayed is governed by the DisplayDateStart and DisplayDateEnd properties. If DisplayMode is Year or Decade, only months or years that contain displayable dates will be displayed. Setting the displayable range to a range that does not include the current DisplayDate will throw an ArgumentOutOfRangeException.

The BlackoutDates property can be used to specify dates that cannot be selected. These dates will be displayed as dimmed and disabled.

By default, Today is highlighted. This can be disabled by setting IsTodayHighlighted to false.

The Calendar control provides basic navigation using either the mouse or keyboard. The following table summarizes keyboard navigation. Key Combination DisplayMode Action ARROW Any Change focused date, unselect all selected dates, and select new focused date. SHIFT+ARROW Any If SelectionMode is not set to SingleDate or None begin selecting a range of dates. CTRL+UP ARROW Any Switch to the next larger DisplayMode. If DisplayMode is already Decade, no action. CTRL+DOWN ARROW Any Switch to the next smaller DisplayMode. If DisplayMode is already Month, no action. SPACEBAR Month Select focused date. SPACEBAR Year or Decade Switch DisplayMode to the Month or Year represented by focused item.

XAML Usage for Classes Derived from Calendar If you define a class that derives from Calendar, the class can be used as an object element in XAML, and all of the inherited properties and events that show a XAML usage in the reference for the Calendar members can have the same XAML usage for the derived class. However, the object element itself must have a different prefix mapping than the controls: mapping shown in the usages, because the derived class comes from an assembly and namespace that you create and define. You must define your own prefix mapping to an XML namespace to use the class as an object element in XAML.

Constructors

Calendar Initializes a new instance of the Calendar class.

Properties

ActualThemeVariant
(Inherited from StyledElement)
Background Gets or sets the brush used to draw the control's background.
(Inherited from TemplatedControl)
BackgroundSizing Gets or sets how the control's background is drawn relative to the control's border.
(Inherited from TemplatedControl)
BlackoutDates Gets a collection of dates that are marked as not selectable.
BorderBrush Gets or sets the brush used to draw the control's border.
(Inherited from TemplatedControl)
BorderThickness Gets or sets the thickness of the control's border.
(Inherited from TemplatedControl)
Bounds
(Inherited from Visual)
BypassFlowDirectionPolicies
(Inherited from Visual)
Classes
(Inherited from StyledElement)
Clip
(Inherited from Visual)
ClipToBounds
(Inherited from Visual)
ContextFlyout Gets or sets a context flyout to the control
(Inherited from Control)
ContextMenu Gets or sets a context menu to the control.
(Inherited from Control)
CornerRadius Gets or sets the radius of the border rounded corners.
(Inherited from TemplatedControl)
Cursor
(Inherited from InputElement)
DataContext
(Inherited from StyledElement)
DataTemplates Gets or sets the data templates for the control.
(Inherited from Control)
DesiredSize
(Inherited from Layoutable)
DisplayDate Gets or sets the date to display.
DisplayDateEnd Gets or sets the last date to be displayed.
DisplayDateStart Gets or sets the first date to be displayed.
DisplayMode Gets or sets a value indicating whether the calendar is displayed in months, years, or decades.
Effect
(Inherited from Visual)
FirstDayOfWeek Gets or sets the day that is considered the beginning of the week.
FlowDirection
(Inherited from Visual)
Focusable
(Inherited from InputElement)
FocusAdorner Gets or sets the control's focus adorner.
(Inherited from Control)
FontFamily Gets or sets the font family used to draw the control's text.
(Inherited from TemplatedControl)
FontFeatures Gets or sets the font features turned on/off.
(Inherited from TemplatedControl)
FontSize Gets or sets the size of the control's text in points.
(Inherited from TemplatedControl)
FontStretch Gets or sets the font stretch used to draw the control's text.
(Inherited from TemplatedControl)
FontStyle Gets or sets the font style used to draw the control's text.
(Inherited from TemplatedControl)
FontWeight Gets or sets the font weight used to draw the control's text.
(Inherited from TemplatedControl)
Foreground Gets or sets the brush used to draw the control's text and other foreground elements.
(Inherited from TemplatedControl)
GestureRecognizers
(Inherited from InputElement)
HasMirrorTransform
(Inherited from Visual)
HeaderBackground 
Height
(Inherited from Layoutable)
HorizontalAlignment
(Inherited from Layoutable)
InheritanceParent
(Inherited from AvaloniaObject)
IsArrangeValid
(Inherited from Layoutable)
IsEffectivelyEnabled
(Inherited from InputElement)
IsEffectivelyVisible
(Inherited from Visual)
IsEnabled
(Inherited from InputElement)
IsEnabledCore
(Inherited from InputElement)
IsFocused
(Inherited from InputElement)
IsHitTestVisible
(Inherited from InputElement)
IsInitialized
(Inherited from StyledElement)
IsKeyboardFocusWithin
(Inherited from InputElement)
IsLoaded Gets a value indicating whether the control is fully constructed in the visual tree and both layout and render are complete.
(Inherited from Control)
IsMeasureValid
(Inherited from Layoutable)
IsPointerOver
(Inherited from InputElement)
IsTabStop
(Inherited from InputElement)
IsTodayHighlighted Gets or sets a value indicating whether the current date is highlighted.
IsVisible
(Inherited from Visual)
Item
(Inherited from AvaloniaObject)
Item
(Inherited from AvaloniaObject)
KeyBindings
(Inherited from InputElement)
LogicalChildren
(Inherited from StyledElement)
Margin
(Inherited from Layoutable)
MaxHeight
(Inherited from Layoutable)
MaxWidth
(Inherited from Layoutable)
MinHeight
(Inherited from Layoutable)
MinWidth
(Inherited from Layoutable)
Name
(Inherited from StyledElement)
Opacity
(Inherited from Visual)
OpacityMask
(Inherited from Visual)
Padding Gets or sets the padding placed between the border of the control and its content.
(Inherited from TemplatedControl)
Parent
(Inherited from StyledElement)
PseudoClasses
(Inherited from StyledElement)
RenderTransform
(Inherited from Visual)
RenderTransformOrigin
(Inherited from Visual)
Resources
(Inherited from StyledElement)
SelectedDate Gets or sets the currently selected date.
SelectedDates Gets a collection of selected dates.
SelectionMode Gets or sets a value that indicates what kind of selections are allowed.
StyleKey
(Inherited from StyledElement)
StyleKeyOverride
(Inherited from StyledElement)
Styles
(Inherited from StyledElement)
TabIndex
(Inherited from InputElement)
Tag Gets or sets a user-defined object attached to the control.
(Inherited from Control)
Template Gets or sets the template that defines the control's appearance.
(Inherited from TemplatedControl)
TemplatedParent
(Inherited from StyledElement)
Theme
(Inherited from StyledElement)
Transitions
(Inherited from Animatable)
UseLayoutRounding
(Inherited from Layoutable)
VerticalAlignment
(Inherited from Layoutable)
VisualChildren
(Inherited from Visual)
VisualRoot
(Inherited from Visual)
Width
(Inherited from Layoutable)
ZIndex
(Inherited from Visual)

Methods

AddHandler(RoutedEvent, Delegate, RoutingStrategies, Boolean)
(Inherited from Interactive)
AddHandler``1(RoutedEventUMP, EventHandlerUMP, RoutingStrategies, Boolean)
(Inherited from Interactive)
ApplyStyling
(Inherited from StyledElement)
ApplyTemplate
(Inherited from TemplatedControl)
Arrange(Rect)
(Inherited from Layoutable)
ArrangeCore(Rect)
(Inherited from Layoutable)
ArrangeOverride(Size)
(Inherited from Layoutable)
BeginInit
(Inherited from StyledElement)
Bind(AvaloniaProperty, IBinding)
(Inherited from AvaloniaObject)
Bind(AvaloniaProperty, IObservableObject, BindingPriority)
(Inherited from AvaloniaObject)
Bind``1(DirectPropertyBaseUMP, IObservableUMP)
(Inherited from AvaloniaObject)
Bind``1(DirectPropertyBaseUMP, IObservableBindingValueUMP)
(Inherited from AvaloniaObject)
Bind``1(DirectPropertyBaseUMP, IObservableObject)
(Inherited from AvaloniaObject)
Bind``1(StyledPropertyUMP, IObservableUMP, BindingPriority)
(Inherited from AvaloniaObject)
Bind``1(StyledPropertyUMP, IObservableBindingValueUMP, BindingPriority)
(Inherited from AvaloniaObject)
Bind``1(StyledPropertyUMP, IObservableObject, BindingPriority)
(Inherited from AvaloniaObject)
BuildEventRoute(RoutedEvent)
(Inherited from Interactive)
CheckAccess
(Inherited from AvaloniaObject)
ClearValue(AvaloniaProperty)
(Inherited from AvaloniaObject)
ClearValue``1(AvaloniaPropertyUMP)
(Inherited from AvaloniaObject)
ClearValue``1(DirectPropertyBaseUMP)
(Inherited from AvaloniaObject)
ClearValue``1(StyledPropertyUMP)
(Inherited from AvaloniaObject)
CoerceValue(AvaloniaProperty)
(Inherited from AvaloniaObject)
EndInit
(Inherited from StyledElement)
Equals(Object)
(Inherited from AvaloniaObject)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Focus(NavigationMethod, KeyModifiers)
(Inherited from InputElement)
GetBaseValue``1(StyledPropertyUMP)
(Inherited from AvaloniaObject)
GetHashCode
(Inherited from AvaloniaObject)
GetTemplateFocusTarget Gets the element that receives the focus adorner.
(Inherited from TemplatedControl)
GetTypeGets the Type of the current instance.
(Inherited from Object)
GetValue(AvaloniaProperty)
(Inherited from AvaloniaObject)
GetValue``1(DirectPropertyBaseUMP)
(Inherited from AvaloniaObject)
GetValue``1(StyledPropertyUMP)
(Inherited from AvaloniaObject)
InitializeIfNeeded
(Inherited from StyledElement)
InvalidateArrange
(Inherited from Layoutable)
InvalidateMeasure
(Inherited from Layoutable)
InvalidateMirrorTransform
(Inherited from Visual)
InvalidateVisual
(Inherited from Visual)
IsAnimating(AvaloniaProperty)
(Inherited from AvaloniaObject)
IsSet(AvaloniaProperty)
(Inherited from AvaloniaObject)
LogicalChildrenCollectionChanged(Object, NotifyCollectionChangedEventArgs)
(Inherited from Visual)
Measure(Size)
(Inherited from Layoutable)
MeasureCore(Size)
(Inherited from Layoutable)
MeasureOverride(Size)
(Inherited from Layoutable)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
OnAccessKey(RoutedEventArgs)
(Inherited from InputElement)
OnApplyTemplate(TemplateAppliedEventArgs) Builds the visual tree for the Calendar when a new template is applied.
(Overrides TemplatedControlOnApplyTemplate(TemplateAppliedEventArgs))
OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs)
(Inherited from TemplatedControl)
OnAttachedToVisualTree(VisualTreeAttachmentEventArgs)
(Inherited from Visual)
OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs)
(Inherited from Control)
OnCreateAutomationPeer Returns a new, type-specific AutomationPeer implementation for the control.
(Inherited from Control)
OnDataContextBeginUpdate
(Inherited from StyledElement)
OnDataContextChanged(EventArgs)
(Inherited from StyledElement)
OnDataContextEndUpdate
(Inherited from StyledElement)
OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs)
(Inherited from TemplatedControl)
OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs)
(Inherited from Visual)
OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs)
(Inherited from Control)
OnGotFocus(GotFocusEventArgs)
(Overrides ControlOnGotFocus(GotFocusEventArgs))
OnInitialized
(Inherited from StyledElement)
OnKeyDown(KeyEventArgs)
(Inherited from InputElement)
OnKeyUp(KeyEventArgs)
(Inherited from Control)
OnLoaded(RoutedEventArgs) Invoked just before the Loaded event.
(Inherited from Control)
OnLostFocus(RoutedEventArgs)
(Overrides ControlOnLostFocus(RoutedEventArgs))
OnMeasureInvalidated
(Inherited from Layoutable)
OnPointerCaptureLost(PointerCaptureLostEventArgs)
(Inherited from InputElement)
OnPointerEntered(PointerEventArgs)
(Inherited from InputElement)
OnPointerExited(PointerEventArgs)
(Inherited from InputElement)
OnPointerMoved(PointerEventArgs)
(Inherited from InputElement)
OnPointerPressed(PointerPressedEventArgs)
(Inherited from InputElement)
OnPointerReleased(PointerReleasedEventArgs)
(Overrides ControlOnPointerReleased(PointerReleasedEventArgs))
OnPointerWheelChanged(PointerWheelEventArgs) Default mouse wheel handler for the calendar control.
(Overrides InputElement.OnPointerWheelChanged(PointerWheelEventArgs))
OnPropertyChanged(AvaloniaPropertyChangedEventArgs)
(Inherited from Control)
OnPropertyChangedCore(AvaloniaPropertyChangedEventArgs)
(Inherited from Animatable)
OnSizeChanged(SizeChangedEventArgs) Invoked just before the SizeChanged event.
(Inherited from Control)
OnTemplateChanged(AvaloniaPropertyChangedEventArgs) Called when the Template property changes.
(Inherited from TemplatedControl)
OnTextInput(TextInputEventArgs)
(Inherited from InputElement)
OnUnloaded(RoutedEventArgs) Invoked just before the Unloaded event.
(Inherited from Control)
OnVisualParentChanged(Visual, Visual)
(Inherited from Layoutable)
RaiseEvent(RoutedEventArgs)
(Inherited from Interactive)
RaisePropertyChanged``1(DirectPropertyBaseUMP, UMP, UMP)
(Inherited from AvaloniaObject)
RemoveHandler(RoutedEvent, Delegate)
(Inherited from Interactive)
RemoveHandler``1(RoutedEventUMP, EventHandlerUMP)
(Inherited from Interactive)
Render(DrawingContext)
(Inherited from Visual)
SetAndRaise``1(DirectPropertyBaseUMP, UMP, UMP)
(Inherited from AvaloniaObject)
SetCurrentValue(AvaloniaProperty, Object)
(Inherited from AvaloniaObject)
SetCurrentValue``1(StyledPropertyUMP, UMP)
(Inherited from AvaloniaObject)
SetValue(AvaloniaProperty, Object, BindingPriority)
(Inherited from AvaloniaObject)
SetValue``1(DirectPropertyBaseUMP, UMP)
(Inherited from AvaloniaObject)
SetValue``1(StyledPropertyUMP, UMP, BindingPriority)
(Inherited from AvaloniaObject)
ToString
(Overrides ObjectToString)
TryGetResource(Object, ThemeVariant, Object)
(Inherited from StyledElement)
UpdateDataValidation(AvaloniaProperty, BindingValueType, Exception)
(Inherited from AvaloniaObject)
UpdateIsEffectivelyEnabled
(Inherited from InputElement)
UpdateLayout
(Inherited from Layoutable)
VerifyAccess
(Inherited from AvaloniaObject)

Events

ActualThemeVariantChanged
(Inherited from StyledElement)
AttachedToLogicalTree
(Inherited from StyledElement)
AttachedToVisualTree
(Inherited from Visual)
ContextRequested Occurs when the user has completed a context input gesture, such as a right-click.
(Inherited from Control)
DataContextChanged
(Inherited from StyledElement)
DetachedFromLogicalTree
(Inherited from StyledElement)
DetachedFromVisualTree
(Inherited from Visual)
DisplayDateChanged Occurs when the DisplayDate property is changed.
DisplayModeChanged Occurs when the DisplayMode property is changed.
DoubleTapped
(Inherited from InputElement)
EffectiveViewportChanged
(Inherited from Layoutable)
GotFocus
(Inherited from InputElement)
Holding
(Inherited from InputElement)
Initialized
(Inherited from StyledElement)
KeyDown
(Inherited from InputElement)
KeyUp
(Inherited from InputElement)
LayoutUpdated
(Inherited from Layoutable)
Loaded Occurs when the control has been fully constructed in the visual tree and both layout and render are complete.
(Inherited from Control)
LostFocus
(Inherited from InputElement)
PointerCaptureLost
(Inherited from InputElement)
PointerEntered
(Inherited from InputElement)
PointerExited
(Inherited from InputElement)
PointerMoved
(Inherited from InputElement)
PointerPressed
(Inherited from InputElement)
PointerReleased
(Inherited from InputElement)
PointerWheelChanged
(Inherited from InputElement)
PropertyChanged
(Inherited from AvaloniaObject)
ResourcesChanged
(Inherited from StyledElement)
SelectedDatesChanged 
SizeChanged Occurs when the bounds (actual size) of the control have changed.
(Inherited from Control)
Tapped
(Inherited from InputElement)
TemplateApplied Raised when the control's template is applied.
(Inherited from TemplatedControl)
TextInput
(Inherited from InputElement)
TextInputMethodClientRequested
(Inherited from InputElement)
Unloaded Occurs when the control is removed from the visual tree.
(Inherited from Control)

Fields

Extension Methods

BringIntoView Tries to bring the control into view.
(Defined by ControlExtensions)
BringIntoView(Rect) Tries to bring the control into view.
(Defined by ControlExtensions)
FindControlT(String) Finds the named control in the scope of the specified control.
(Defined by ControlExtensions)
FindDataTemplate(Object, IDataTemplate) Find a data template that matches a piece of data.
(Defined by DataTemplateExtensions)
GetControlT(String) Finds the named control in the scope of the specified control and throws if not found.
(Defined by ControlExtensions)
GetTemplateChildren
(Defined by TemplateExtensions)

See Also