CalendarControl Class

Displays a monthly calendar and allows an end-user to select a date or date range(s).

Namespace: DevExpress.XtraEditors.Controls

Assembly: DevExpress.XtraEditors.v21.1.dll

Declaration

public class CalendarControl :
    CalendarControlBase,
    IDateTouchCalendarControl,
    ITouchCalendarControl,
    IPickItemsContainer,
    IMouseWheelSupport

Remarks

The calendar control displays one or multiple months simultaneously. An end-user can select a certain date, a date range or multiple dates/date ranges.

CalendarControl.png

To access selected dates, use the following properties:

The control’s main features include:

Feature

Members

Any number of months can be visible simultaneously.

CalendarControlBase.RowCount, CalendarControlBase.ColumnCount, CalendarControlBase.CalendarVerticalIndent, CalendarControlBase.CalendarHorizontalIndent

Ability to customize the appearance of the calendar’s various elements (cells corresponding to regular and special dates, headers, etc.)

CalendarControlBase.CalendarAppearance

CalendarControlBase.CellStyleProvider

CalendarControlBase.SpecialDateProvider

Ability to enter the time portion of a date

CalendarControlBase.CalendarTimeEditing, CalendarControlBase.CalendarTimeProperties, CalendarControlBase.CalendarDateEditing

Multiple views of the calendar control, including a touch-aware UI.

CalendarControlBase.CalendarView

Touch UI:

CalendarControl-TouchUI.png

Custom cell size

CalendarControlBase.CellSize

Ability to display context buttons in calendar cells. This allows you to mark certain date cells with custom text and images.

CalendarControlBase.ContextButtons and CalendarControlBase.ContextButtonOptions properties.

CalendarControlBase.ContextButtonCustomize, CalendarControlBase.ContextButtonClick, CalendarControlBase.CustomContextButtonToolTip and CalendarControlBase.ContextButtonValueChanged events.

Draw lines between cells

CalendarControlBase.DrawCellLines

Specify the first day of the week

CalendarControlBase.FirstDayOfWeek

The minimum and maximum dates shown

CalendarControlBase.MinValue and CalendarControlBase.MaxValue

Single or multiple date selection

CalendarControlBase.SelectionMode, CalendarControlBase.SelectionBehavior, CalendarControlBase.DateTime, CalendarControlBase.SyncSelectionWithEditValue, CalendarControlBase.SelectedRanges

Displaying week numbers

CalendarControlBase.ShowWeekNumbers, CalendarControlBase.WeekNumberRule CalendarControlBase.CustomWeekNumber

Disabling certain dates

CalendarControlBase.DisableCalendarDate

CalendarControlBase.DisabledDateProvider

Custom date painting

CalendarControl.CustomDrawDayNumberCell

Tooltips

DevExpress controls support regular and super tooltips. If the ShowToolTips option is enabled, tooltips are shown when the mouse pointer hovers the control.

Use the following properties to specify a regular tooltip’s content:

  • ToolTip — a regular tooltip’s text. If the text is not specified, the tooltip is not displayed even if the title is specified. You can use line breaks in regular tooltips. Use the AllowHtmlTextInToolTip property to specify whether to parse HTML tags in the text. HTML tags allow you to format the text: size, style, hyperlinks, etc.
  • ToolTipTitle — a regular tooltip’s title. If the title is not specified, it is not displayed.
  • ToolTipIconType — a regular tooltip’s predefined icon. Use the controller’s IconSize property to specify the image size.

    To display a custom image in all regular tooltips, use the controller’s ImageList and ImageIndex properties.

    To display a custom image in a particular regular tooltip, handle the BeforeShow event. Use the ImageOptions event argument to assign a raster or vector image to the processed tooltip.

To assign a super tooltip to a control, use the SuperTip property. Enable the AllowHtmlText property to use HTML tags in the super tooltip.

To replace regular tooltips with super tooltips, set the ToolTipController.ToolTipType property to SuperTip. The controller automatically converts regular tooltips to super tooltips. To access this property, you can use the DefaultToolTipController component or a custom controller assigned to the ToolTipController property. See Tooltips for more information.

See Also