The ExCalendar Library offers two versatile components a standard calendar and a drop-down version designed to provide a modern and intuitive date selection experience. With support for a wide date range (from 1/1/0100 to 12/31/9999), ExCalendar enables seamless date input through a highly customizable user interface. Both versions support rich visual customization, including images, colors, font styles, and multi-line tooltips for any specific date. The library also features full skinning capabilities using EBN technology, allowing developers to apply visual themes that enhance appearance without compromising usability. Skins can be easily defined and applied to any part of the control, ensuring consistent and attractive integration into your application's UI.
Features include:
1. Visual & Customization Features
2. Calendar Functionality
3. Integration & Usage
4. Additional Features

The Calendar object supports the following properties and methods:


| Name | Description | |||
| AddNonworkingDate | Defines one or more non-working dates, either individually or by using a format expression that specifies recurring non-working dates. | |||
| AlignmentDay | Specifies the alignment of the days within the control. | |||
| Appearance | Retrieves or sets the control's appearance | |||
| AppearanceDay | Retrieves or sets a value that determines the day's appearance. | |||
| AttachTemplate | Attaches a script to the current object, including the events, from a string, file, a safe array of bytes. | |||
| AutoSize | Retrieves or sets a value that indicates whether the control automatically resizes the cell based on the size of the font. | |||
| BackColor | Retrieves or sets the control's background color. | |||
| Background | Returns or sets a value that indicates the background color for parts in the control. | |||
| BeginUpdate | Maintains performance while multiple changes are done at once. This method prevents the control from painting until the EndUpdate method is called. | |||
| BorderLineColor | Retrieves or sets a value that indicates the border line color. | |||
| ClearNonworkingDates | Clears nonworking dates, previously added using AddNonworkingDate. | |||
| CommentBackColor | Retrieves or sets the color to highlight the commented events. | |||
| Date | Retrieves or sets the browsed date. Ensures that the date is visible. | |||
| DateFromPoint | Retrieves the date from point. | |||
| DateHeaderField | Specifies the HTML caption to be shown on the giving field of the date's header. | |||
| DateHeaderFormat | Specifies the CRD format to display the month/year/buttons within the date's header. | |||
| DisplayWeekNumberAs | Specifies the way the control displays the week number. | |||
| DoDate | Composes a DATE type, based on year, month and day. | |||
| DrawBorderLine | Retrieves or sets a value that indicates the border line style. | |||
| DrawGridLine | Retrieves or sets a value that identifies the type of grid lines. | |||
| Enabled | Retrieves or sets a value that indicates whether the control is enabled ot disabled. | |||
| EndUpdate | Resumes painting the control after painting is suspended by the BeginUpdate method. | |||
| EventParam | Retrieves or sets a value that indicates the current's event parameter. | |||
| Events | Retrieves the control date events collection. | |||
| ExecuteTemplate | Executes a template and returns the result. | |||
| FirstDay | Retrieves or sets a value that indicates the first day of the week. | |||
| FirstVisibleDate | Retrieves the first visible date. | |||
| FixedCellHeight | Retrieves or sets a value that indicates the cell's height while the AutoSize is exFixed. | |||
| FixedCellWidth | Retrieves or sets a value that indicates the cell's width while the AutoSize is exFixed. | |||
| FocusDate | Retrieves or sets the focused date | |||
| Font | Retrieves or sets the control's font. | |||
| ForeColor | Retrieves or sets the control's foreground color. | |||
| FormatABC | Formats the A,B,C values based on the giving expression and returns the result. | |||
| FreezeEvents | Prevents the control to fire any event. | |||
| GridLineColor | Retrieves or sets a value that indicates the grid lines color. | |||
| HeaderBackColor | Retrieves or sets a value that indicates the background color used for weeks and week days headers. | |||
| HeaderForeColor | Retrieves or sets a value that indicates the foreground color used for weeks and week days headers. | |||
| HideSelection | Specifies whether selected date appears selected when a control loses focus. | |||
| HTMLPicture | Adds or replaces a picture in HTML captions. | |||
| hWnd | Retrieves the control's window handle. | |||
| Images | Sets the control's handle image list. | |||
| ImageSize | Retrieves or sets the size of icons the control displays. | |||
| IntegralHeight | Retrieves the height of the control to fit the MaxMonthY months in the client area. | |||
| IntegralWidth | Retrieves the width of the control to fit the MaxMonthX months in the client area. | |||
| LastVisibleDate | Retrieves the last visible date. | |||
| LocAMPM | Retrieves the time marker such as AM or PM using the current user regional and language settings. | |||
| LocFirstDay | Indicates the first day of the week, as specified in the regional settings. | |||
| Locked | Specifies whether the user can change the selection. | |||
| LocMonthNames | Retrieves the list of month names, as indicated in the regional settings, separated by space. | |||
| LocWeekDays | Retrieves the list of names for each week day, as indicated in the regional settings, separated by space. | |||
| MarkToday | Retrieves or sets a value that indicates whether the control marks the today date. | |||
| MaxDate | Retrieves or sets the min date. | |||
| MaxMonthX | Specifies the maximum number of months horizontally displayed. | |||
| MaxMonthY | Specifies the maximum number of months vertically displayed. | |||
| MaxScrollYear | Specifies the maximum year when scrolling. | |||
| MinDate | Retrieves or sets the min date. | |||
| MinMonthX | Specifies the minimum number of months horizontally displayed. | |||
| MinMonthY | Specifies the minimum number of months vertically displayed. | |||
| MinScrollYear | Specifies the minimum year when scrolling. | |||
| MonthName | Retrieves or sets the month's name. | |||
| MonthNames | Retrieves or sets a value that indicates the list of month names, separated by space. | |||
| NonMonthDaysColor | Retrieves or sets a value that indicates the color to show the non-month days. | |||
| NonworkingDays | Retrieves or sets a value that indicates the non-working days, for each week day a bit. | |||
| NonworkingDaysColor | Retrieves or sets a value that indicates the color to fill the non-working days. | |||
| NonworkingDaysForeColor | Retrieves or sets a value that indicates the foreground color for non-working days. | |||
| NonworkingDaysPattern | Retrieves or sets a value that indicates the pattern being used to fill non-working days. | |||
| Picture | Retrieves or sets a graphic to be displayed in the control. | |||
| PictureDisplay | Retrieves or sets a value that indicates the way how the graphic is displayed on the control's background | |||
| Refresh | Refreshes the control. | |||
| RemoveNonworkingDate | Removes a nonworking date, previously added using AddNonworkingDate. | |||
| ReplaceIcon | Adds a new icon, replaces an icon or clears the control's image list. | |||
| SelBackColor | Retrieves or sets a value that indicates the selection background color. | |||
| SelCount | Retrieves the count of selected dates. | |||
| SelDate | Selects a date while SingleSel is true. | |||
| Selectable | Retrieves or sets the expression that defines which dates can be selected. | |||
| SelectDate | Retrieves the selected date, given its index into selected dates collection. Use SelCount in order to get the count of selected dates. | |||
| Selection | Serializes the selected dates to a string. | |||
| SelectTodayDate | Specifies whether the current date is selected when the user clicks the Today button. | |||
| SelForeColor | Retrieves or sets a value that indicates the selection foreground color. | |||
| ShowDays | Retrieves or sets a value that indicates whether the week days header is visible or hidden. | |||
| ShowImageList | Specifies whether the control's image list window is visible or hidden. | |||
| ShowMonth | Retrieves or sets a value that indicates whether the month header is visible or hidden. | |||
| ShowMonthSelector | Retrieves or sets a value that indicates whether the user is able to select a new month by clicking in the month header. | |||
| ShowNonMonthDays | Specifies whether the control displays the dates that are not part of the month. | |||
| ShowTodayButton | Retrieves or sets a value that indicates whether the today button is visible or hidden. | |||
| ShowToolTip | Shows the specified tooltip at given position. | |||
| ShowWeeks | Retrieves or sets a value that indicates whether the weeks header is visible or hidden. | |||
| ShowYearScroll | Retrieves or sets a value that indicates whether the scroll bar for changing the year is visible or hidden. | |||
| ShowYearSelector | Retrieves or sets a value that indicates whether the year selector is visible or hidden. | |||
| SingleSel | Retrieves or sets a value that indicates whether the control supports single or multiple selection. | |||
| Template | Specifies the control's template. | |||
| TemplateDef | Defines inside variables for the next Template/ExecuteTemplate call. | |||
| TemplatePut | Defines inside variables for the next Template/ExecuteTemplate call. | |||
| TodayCaption | Retrieves or sets a value that indicates the today button's caption. | |||
| ToolTipDelay | Specifies the time in ms that passes before the ToolTip appears. | |||
| ToolTipFont | Retrieves or sets the tooltip's font. | |||
| ToolTipPopDelay | Specifies the period in ms of time the ToolTip remains visible if the mouse pointer is stationary within a control. | |||
| ToolTipWidth | Specifies a value that indicates the width of the tooltip window, in pixels. | |||
| UnSelDate | Unselects the date. | |||
| UseVisualTheme | Specifies whether the control uses the current visual theme to display certain UI parts. | |||
| Value | Specifies the selected date. | |||
| Version | Retrieves the control's version. | |||
| VisualAppearance | Retrieves the control's appearance. | |||
| VisualDesign | Invokes the control's VisualAppearance designer. | |||
| WeekDayName | Retrieves or sets a value that indicates the week day short name in the week days header. | |||
| WeekDays | Retrieves or sets a value that indicates the list of short names for each week day, separated by space. |