xtd 1.0.0
Loading...
Searching...
No Matches
xtd::forms::month_calendar Class Reference
Inheritance diagram for xtd::forms::month_calendar:
xtd::forms::control xtd::forms::component xtd::forms::iwin32_window xtd::icomparable< control > xtd::iequatable< control > xtd::isynchronize_invoke xtd::object xtd::interface xtd::interface xtd::extensions::comparison_operators< control, icomparable< control > > xtd::interface xtd::extensions::equality_operators< control, iequatable< control > > xtd::interface

Definition

Represents a control that displays a month calendar.

Header
#include <xtd/forms/month_calendar>
Namespace
xtd::forms
Library
xtd.forms
Remarks
The xtd::forms::month_calendar control allows the user to select a date using a visual display. You can limit the date and times that can be selected by setting the xtd::forms::month_calendar::min_date and xtd::forms::month_calendar::max_date properties.
You can change the look of the calendar portion of the control by setting the xtd::forms::month_calendar::fore_color, xtd::forms::month_calendar::font, xtd::forms::month_calendar::title_back_color, xtd::forms::month_calendar::title_fore_color, xtd::forms::month_calendar::trailing_fore_color, and xtd::forms::month_calendar::back_color properties.
Note
The xtd::forms::month_calendar control only supports Gregorian calendars.
Remarks
The xtd::forms::month_calendar control is drawn by the operating system, so the xtd::forms::month_calendar::paint event is never raised. If you need to provide a customized look to the xtd::forms::month_calendar control, you should override the xtd::forms::month_calendar::on_print method, call the base implementation of xtd::forms::control::on_print, and then perform custom painting.
If you need custom date formatting and a selection limited to just one date, you might consider using a xtd::forms::month_calendar::date_time_picker control instead of a xtd::forms::month_calendar. Using the xtd::forms::month_calendar::date_time_picker eliminates much of the need for validating date/time values.
Appearance
Windows macOS Gnome
Light
Dark
Examples
The following code example demonstrates the use of month_calendar control.
#include <xtd/xtd>
#include <chrono>
using namespace std::chrono;
class form1 : public form {
public:
form1() {
text("Month calendar example");
month_calendar1.parent(*this);
month_calendar1.location({10, 10});
month_calendar1.date_changed += delegate_(object&, const event_args & e) {
label1.text(string::format("selection range: [{:d}, {:d}]", month_calendar1.selection_start(), month_calendar1.selection_end()));
};
month_calendar1.selection_range({date_time::now(), date_time::now()});
month_calendar1.min_date(date_time::now().subtract(months(3)));
month_calendar1.max_date(date_time::now().add(months(3)));
label1.parent(*this);
label1.auto_size(true);
label1.location({10, 180});
label1.text(string::format("selection range: [{:d}, {:d}]", month_calendar1.selection_start(), month_calendar1.selection_end()));
}
private:
month_calendar month_calendar1;
label label1;
};
auto main() -> int {
application::run(form1 {});
}
static auto now() noexcept -> date_time
Gets a xtd::date_time object that is set to the current date and time on this computer,...
Represents the base class for classes that contain event data, and provides a value to use for events...
Definition event_args.hpp:18
friend class form
The form data allows you to specify the box of a form control.
Definition control.hpp:1854
virtual auto text() const noexcept -> const xtd::string &
Gets the text associated with this control.
static auto format(const basic_string< char > &fmt, args_t &&... args) -> basic_string
#define delegate_
The declaration of a delegate type is similar to a method signature. It has a return value and any nu...
Definition delegate.hpp:1018
xtd::forms::style_sheets::control label
The label data allows you to specify the box of a label control.
Definition label.hpp:25
@ add
The add key.
Definition keys.hpp:281
@ subtract
The subtract key.
Definition keys.hpp:285

Classes

class  hit_test_info
 Contains information about an area of a xtd::forms::month_calendar control. This class cannot be inherited. More...

Public Types

enum class  hit_area {
  nowhere ,
  title_background ,
  title_month ,
  title_year ,
  next_month_button ,
  prev_month_button ,
  calendar_background ,
  date ,
  next_month_date ,
  prev_month_date ,
  day_of_week ,
  week_numbers ,
  today_link
}
 Defines constants that represent areas in a xtd::forms::month_calendar control. More...

Public Events

xtd::event< month_calendar, xtd::forms::date_range_event_handlerdate_changed
 Occurs when the date selected in the xtd::forms::month_calendar changes.
xtd::event< month_calendar, xtd::forms::date_range_event_handlerdate_selected
 Occurs when the user makes an explicit date selection using the mouse.

Public Constructors

 month_calendar ()
 Initializes a new instance of the month_calendar class.

Public Properties

auto annually_bolded_dates () const noexcept -> xtd::array< xtd::date_time >
 Gets the array of xtd::date_time objects that determines which annual days are displayed in bold.
auto annually_bolded_dates (const xtd::array< xtd::date_time > &value) -> month_calendar &
 Sets the array of xtd::date_time objects that determines which annual days are displayed in bold.
auto bolded_dates () const noexcept -> xtd::array< xtd::date_time >
 Gets the array of xtd::date_time bjects that determines which nonrecurring dates are displayed in bold.
auto bolded_dates (const xtd::array< xtd::date_time > &value) -> month_calendar &
 Sets the array of xtd::date_time bjects that determines which nonrecurring dates are displayed in bold.
auto calendar_dimensions () const noexcept -> const xtd::drawing::size &
 Gets the number of columns and rows of months displayed.
auto calendar_dimensions (const xtd::drawing::size &value) -> month_calendar &
 Sets the number of columns and rows of months displayed.
auto first_day_of_week () const noexcept -> xtd::forms::day
 Gets the first day of the week as displayed in the month calendar.
auto first_day_of_week (xtd::forms::day value) -> month_calendar &
 Sets the first day of the week as displayed in the month calendar.
auto max_date () const noexcept -> xtd::date_time
 Gets the maximum date that can be selected in the control.
auto max_date (xtd::date_time value) -> month_calendar &
 Sets the maximum date that can be selected in the control.
auto max_selection_count () const noexcept -> xtd::uint32
 Gets the maximum number of days that can be selected in a month calendar control.
auto max_selection_count (xtd::uint32 value) -> month_calendar &
 Sets the maximum number of days that can be selected in a month calendar control.
auto min_date () const noexcept -> xtd::date_time
 Gets the minimum date that can be selected in the control.
auto min_date (xtd::date_time value) -> month_calendar &
 Sets the minimum date that can be selected in the control.
auto monthly_bolded_dates () const noexcept -> xtd::array< xtd::date_time >
 Gets the array of xtd::date_time objects that determine which monthly days to bold.
auto monthly_bolded_dates (const xtd::array< xtd::date_time > &value) -> month_calendar &
 Sets the array of xtd::date_time objects that determine which monthly days to bold.
auto selection_end () const noexcept -> xtd::date_time
 Gets the end date of the selected range of dates.
auto selection_end (xtd::date_time value) -> month_calendar &
 Sets the end date of the selected range of dates.
auto selection_range () const noexcept -> xtd::forms::selection_range
 Gets the selected range of dates for a month calendar control.
auto selection_range (const xtd::forms::selection_range &value) -> month_calendar &
 Sets the selected range of dates for a month calendar control.
auto selection_start () const noexcept -> xtd::date_time
 Gets the start date of the selected range of dates.
auto selection_start (xtd::date_time value) -> month_calendar &
 Sets the start date of the selected range of dates.
auto show_today () const noexcept -> bool
 Gets a value indicating whether the date represented by the xtd::today_date property is displayed at the bottom of the control.
auto show_today (bool value) -> month_calendar &
 Sets a value indicating whether the date represented by the xtd::today_date property is displayed at the bottom of the control.
auto show_today_circle () const noexcept -> bool
 Gets a value indicating whether today's date is identified with a circle or a square.
auto show_today_circle (bool value) -> month_calendar &
 Sets a value indicating whether today's date is identified with a circle or a square.
auto show_week_numbers () const noexcept -> bool
 Gets a value indicating whether the month calendar control displays week numbers (1-52) to the left of each row of days.
auto show_week_numbers (bool value) -> month_calendar &
 Sets a value indicating whether the month calendar control displays week numbers (1-52) to the left of each row of days.
auto single_month_size () const noexcept -> xtd::drawing::size
 Gets the minimum size to display one month of the calendar.
auto title_back_color () const noexcept -> xtd::drawing::color
 Gets a value indicating the background color of the title area of the calendar.
auto title_back_color (const xtd::drawing::color &value) -> month_calendar &
 Sets a value indicating the background color of the title area of the calendar.
auto title_fore_color () const noexcept -> xtd::drawing::color
 Gets a value indicating the foreground color of the title area of the calendar.
auto title_fore_color (const xtd::drawing::color &value) -> month_calendar &
 Sets a value indicating the foreground color of the title area of the calendar.
auto today_date () const noexcept -> const xtd::date_time &
 Gets the value that is used by xtd::forms::month_calendar as today's date.
auto today_date (const xtd::date_time &value) -> month_calendar &
 Sets the value that is used by xtd::forms::month_calendar as today's date.
auto today_date_set () const noexcept -> bool
 Gets a value indicating whether the xtd::forms::month_calendar::today_date property has been explicitly set.
auto trailing_fore_color () const noexcept -> xtd::drawing::color
 Gets a value indicating the color of days in months that are not fully displayed in the control.
auto trailing_fore_color (const xtd::drawing::color &value) -> month_calendar &
 Sets a value indicating the color of days in months that are not fully displayed in the control.

Public Methods

auto add_annually_bolded_date (const xtd::date_time &date) -> void
 Adds a day that is displayed in bold on an annual basis in the month calendar.
auto add_bolded_date (const xtd::date_time &date) -> void
 Adds a day to be displayed in bold in the month calendar.
auto add_monthly_bolded_date (const xtd::date_time &date) -> void
 Adds a day that is displayed in bold on a monthly basis in the month calendar.
auto hit_test (xtd::int32 x, xtd::int32 y) const -> hit_test_info
 Returns a xtd::forms::month_calendar::hit_test_info with information on which portion of a month calendar control is at a specified x- and y-coordinate.
auto hit_test (const xtd::drawing::point &point) const -> hit_test_info
 Returns an object with information on which portion of a month calendar control is at a location specified by a xtd::drawing::point.
auto remove_all_annually_bolded_dates () -> void
 Removes all the annually bold dates.
auto remove_all_bolded_dates () -> void
 Removes all the nonrecurring bold dates.
auto remove_all_monthly_bolded_dates () -> void
 Removes all the monthly bold dates.
auto remove_annually_bolded_dates (const xtd::date_time &date) -> void
 Removes the specified date from the list of annually bold dates.
auto remove_bolded_dates (const xtd::date_time &date) -> void
 Removes the specified date from the list of the nonrecurring bold dates.
auto remove_monthly_bolded_dates (const xtd::date_time &date) -> void
 Removes the specified date from the list of monthly bold dates.
auto set_calendar_dimensions (xtd::int32 x, xtd::int32 y) -> void
 Sets the number of columns and rows of months to display.
auto set_date (const xtd::date_time &date) -> void
 Sets a date as the currently selected date.
auto set_selection_range (const xtd::date_time &date1, const xtd::date_time &date2) -> void
 Sets the selected dates in a month calendar control to the specified date range.
auto to_string () const noexcept -> xtd::string override
 Returns a string containing the name of the control, if any.
auto update_bolded_dates () -> void
 Repaints the bold dates to reflect the dates set in the lists of bold dates.

Public Static Methods

static auto create () -> month_calendar
 A factory to create an xtd::forms::month_calendar.
static auto create (const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified location.
static auto create (const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified location, and size.
static auto create (const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified location, size, and name.
static auto create (const forms::selection_range &selection_range) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value.
static auto create (const forms::selection_range &selection_range, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, and location.
static auto create (const forms::selection_range &selection_range, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, location, and size.
static auto create (const forms::selection_range &selection_range, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, location, size, and name.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &max_date) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, and minimum date.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &max_date, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, maximum date, and location.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, maximum date, location, and size.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, maximum date, location, size, and name.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, minimum date, and maximum date.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, minimum date, maximum date, and location.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, minimum date, maximum date, location, and size.
static auto create (const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified value, minimum date, maximum date, location, size, and name.
static auto create (const xtd::forms::control &parent) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent.
static auto create (const xtd::forms::control &parent, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, and location.
static auto create (const xtd::forms::control &parent, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, location, and size.
static auto create (const xtd::forms::control &parent, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, location, size, and name.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, and value.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, and location.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, location, and size.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, location, size, and name.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &max_date) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, and maximum date.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &max_date, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, maximum date, and location.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, maximum date, location, and size.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, maximum date, location, size, and name.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, and maximum date.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date, const xtd::drawing::point &location) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, maximum date, and location.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, maximum date, location, and size.
static auto create (const xtd::forms::control &parent, const forms::selection_range &selection_range, const xtd::date_time &min_date, const xtd::date_time &max_date, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> month_calendar
 A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, maximum date, location, size, and name.

Protected Properties

auto create_params () const noexcept -> xtd::forms::create_params override
 Gets the required creation parameters when the control handle is created.
auto default_back_color () const noexcept -> xtd::drawing::color override
 Gets the default background color of the control.
auto default_fore_color () const noexcept -> xtd::drawing::color override
 Gets the default foreground color of the control.

Protected Methods

virtual auto on_date_changed (const xtd::forms::date_range_event_args &e) -> void
 Raises the xtd::forms::month_calendar::date_changed event.
virtual auto on_date_selected (const xtd::forms::date_range_event_args &e) -> void
 Raises the xtd::forms::month_calendar::date_selected event.
auto on_handle_created (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::handle_created event.
auto wnd_proc (xtd::forms::message &message) -> void override
 Processes Windows messages.

Additional Inherited Members

using context_menu_ref
 Represent an xtd::forms::context_menu reference.
xtd::event< control, xtd::event_handlerauto_size_changed
 Occurs when the value of the xtd::forms::control::auto_size property changes.
xtd::event< control, xtd::event_handlerback_color_changed
 Occurs when the value of the xtd::forms::control::back_color property changes.
xtd::event< control, xtd::event_handlerbackground_image_changed
 Occurs when the value of the xtd::forms::control::background_image property changes.
xtd::event< control, xtd::event_handlerbackground_image_layout_changed
 Occurs when the value of the xtd::forms::control::background_image_layout property changes.
xtd::event< control, xtd::event_handlercontrol_appearance_changed
 Occurs when the value of the xtd::forms::control::control_appearance property changes.
xtd::event< control, xtd::event_handlerclick
 Occurs when the xtd::forms::control is clicked.
xtd::event< control, xtd::event_handlerclient_size_changed
 Occurs when the value of the xtd::forms::control::client_size property changes.
xtd::event< control, xtd::event_handlercursor_changed
 Occurs when the value of the xtd::forms::control::cursor property changes.
xtd::event< control, xtd::forms::control_event_handlercontrol_added
 Occurs when a new xtd::forms::control::control is added to the xtd::forms::control::control_collection.
xtd::event< control, xtd::forms::control_event_handlercontrol_removed
 Occurs when a new xtd::forms::control:: is removed to the xtd::forms::control::control_collection.
xtd::event< control, xtd::event_handlerdock_changed
 Occurs when the value of the xtd::forms::control::dock property changes.
xtd::event< control, xtd::event_handlerdouble_click
 Occurs when the xtd::forms::control is double-clicked.
xtd::event< control, xtd::event_handlergot_focus
 Occurs when the xtd::forms::control receives focus.
xtd::event< control, xtd::event_handlerhandle_created
 Occurs when a handle is created for the xtd::forms::control.
xtd::event< control, xtd::event_handlerhandle_destroyed
 Occurs when the control's handle is in the process of being destroyed.
xtd::event< control, xtd::event_handlerenabled_changed
 Occurs when the value of the xtd::forms::control::enabled property changes.
xtd::event< control, xtd::event_handlerfore_color_changed
 Occurs when the value of the xtd::forms::control::fore_color property changes.
xtd::event< control, xtd::event_handlerfont_changed
 Occurs when the value of the xtd::forms::control::font property changes.
xtd::event< control, xtd::forms::help_event_handlerhelp_requested
 Occurs when the user requests help for a xtd::forms::control.
xtd::event< control, xtd::forms::key_event_handlerkey_down
 Occurs when a key is pressed while the xtd::forms::control has focus.
xtd::event< control, xtd::forms::key_press_event_handlerkey_press
 Occurs when a character. space or backspace key is pressed while the xtd::forms::control has focus.
xtd::event< control, xtd::forms::key_event_handlerkey_up
 Occurs when a key is released while the xtd::forms::control has focus.
xtd::event< control, xtd::event_handlerlayout
 Occurs when a xtd::forms::control should reposition its child controls.
xtd::event< control, xtd::event_handlerlocation_changed
 Occurs when the value of the xtd::forms::control::location property changes.
xtd::event< control, xtd::event_handlerlost_focus
 Occurs when the xtd::forms::control loses focus.
xtd::event< control, xtd::forms::mouse_event_handlermouse_click
 Occurs when the xtd::forms::control is clicked by the mouse.
xtd::event< control, xtd::forms::mouse_event_handlermouse_double_click
 Occurs when the xtd::forms::control is double clicked by the mouse.
xtd::event< control, xtd::forms::mouse_event_handlermouse_down
 Occurs when the mouse pointer is over the xtd::forms::control and a mouse button is pressed.
xtd::event< control, xtd::event_handlermouse_enter
 Occurs when the mouse pointer enters the xtd::forms::control.
xtd::event< control, xtd::forms::mouse_event_handlermouse_horizontal_wheel
 Occurs when the mouse horizontal wheel moves while the xtd::forms::control has focus.
xtd::event< control, xtd::event_handlermouse_leave
 Occurs when the mouse pointer leaves the xtd::forms::control.
xtd::event< control, xtd::forms::mouse_event_handlermouse_move
 Occurs when the mouse pointer is moved over the xtd::forms::control.
xtd::event< control, xtd::forms::mouse_event_handlermouse_up
 Occurs when the mouse pointer is over the xtd::forms::control and a mouse button is released.
xtd::event< control, xtd::forms::mouse_event_handlermouse_wheel
 Occurs when the mouse wheel moves while the xtd::forms::control has focus.
xtd::event< control, xtd::event_handlermove
 Occurs when the control is moved.
xtd::event< control, xtd::forms::paint_event_handlerpaint
 Occurs when the xtd::forms::control is redrawn.
xtd::event< control, xtd::event_handlerparent_changed
 Occurs when the value of the xtd::forms::control::parent property changes.
xtd::event< control, xtd::event_handlerregion_changed
 Occurs when the value of the xtd::forms::control::region property changes.
xtd::event< control, xtd::event_handlerresize
 Occurs when the xtd::forms::control is resized.
xtd::event< control, xtd::event_handlerright_to_left_changed
 Occurs when the value of the xtd::forms::control::right_to_left property changes.
xtd::event< control, xtd::event_handlersize_changed
 Occurs when the value of the xtd::forms::control::size property changes.
xtd::event< control, xtd::event_handlerstyle_sheet_changed
 Occurs when the value of the xtd::forms::control::style_sheet property changes or when xtd::application::style_sheet property changes.
xtd::event< control, xtd::event_handlersystem_colors_changed
 Occurs when the xtd::drwing::system_colors changes.
xtd::event< control, xtd::event_handlertab_stop_changed
 Occurs when the xtd::forms::control::tab_stop property value changes.
xtd::event< control, xtd::event_handlertext_changed
 Occurs when the value of the xtd::forms::control::text property changes.
xtd::event< control, xtd::event_handlervisible_changed
 Occurs when the value of the xtd::forms::control::visible property changes.
 control ()
 Initializes a new instance of the xtd::forms::control class with default settings.
 control (const xtd::string &text)
 Initializes a new instance of the xtd::forms::control class with specific text.
 control (const control &parent, const xtd::string &text)
 Initializes a new instance of the xtd::forms::control class as a child control, with specific text.
 control (const xtd::string &text, int32 left, int32 top, int32 width, int32 height)
 Initializes a new instance of the control class with specific text, size, and location.
 control (const control &parent, const xtd::string &text, int32 left, int32 top, int32 width, int32 height)
 Initializes a new instance of the xtd::forms::control class as a child control, with specific text, size, and location.
virtual auto anchor () const noexcept -> xtd::forms::anchor_styles
 Gets the edges of the container to which a control is bound and determines how a control is resized with its parent.
virtual auto anchor (xtd::forms::anchor_styles value) -> control &
 Gets the edges of the container to which a control is bound and determines how a control is resized with its parent.
virtual auto auto_scroll_point () const noexcept -> xtd::drawing::point
 Gets where this control is scrolled to in scroll_control_into_view(control).
virtual auto auto_size () const noexcept -> bool
 Gets a value that indicates whether the control resizes based on its contents.
virtual auto auto_size (bool value) -> control &
 Sets a value that indicates whether the control resizes based on its contents.
virtual auto back_color () const noexcept -> xtd::drawing::color
 Gets the background color for the control.
virtual auto back_color (const xtd::drawing::color &value) -> control &
 Sets the background color for the control.
virtual auto back_color (xtd::null_ptr) -> control &
 Resets the background color for the control.
virtual auto background_image () const noexcept -> const xtd::drawing::image &
 Gets the background image displayed in the control.
virtual auto background_image (const xtd::drawing::image &value) -> control &
 Sets the background image displayed in the control.
virtual auto background_image_layout () const noexcept -> xtd::forms::image_layout
 Gets the background image layout as defined in the xtd::forms::image_layout enumeration.
virtual auto background_image_layout (xtd::forms::image_layout value) -> control &
 Sets the background image layout as defined in the xtd::forms::image_layout enumeration.
virtual auto bottom () const noexcept -> xtd::int32
 Gets the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area.
virtual auto bounds () const noexcept -> xtd::drawing::rectangle
 Gets the size and location of the control including its nonclient elements, in pixels, relative to the parent control.
virtual auto bounds (const xtd::drawing::rectangle &value) -> control &
 Sets the size and location of the control including its nonclient elements, in pixels, relative to the parent control.
virtual auto can_focus () const noexcept -> bool
 Gets a value indicating whether the control can receive focus.
virtual auto can_select () const noexcept -> bool
 Gets a value indicating whether the control can be selected.
auto can_raise_events () const noexcept -> bool override
 Determines if events can be raised on the control.
virtual auto client_rectangle () const noexcept -> const xtd::drawing::rectangle &
 Gets the rectangle that represents the client area of the control.
virtual auto client_size () const noexcept -> const xtd::drawing::size &
 Gets the height and width of the client area of the control.
virtual auto client_size (const xtd::drawing::size &value) -> control &
 Sets the height and width of the client area of the control.
virtual auto company_name () const noexcept -> xtd::string
 Gets the name of the company or creator of the application containing the control.
virtual auto context_menu () const noexcept -> std::optional< context_menu_ref >
 Gets the xtd::forms::context_menu that is displayed in the control.
virtual auto context_menu (xtd::forms::context_menu &value) -> control &
 Sets the xtd::forms::context_menu that is displayed in the control.
virtual auto context_menu (xtd::null_ptr) -> control &
 Resets the xtd::forms::context_menu that is displayed in the control.
virtual auto control_appearance () const noexcept -> xtd::forms::control_appearance
 Gets control appearance.
virtual auto control_appearance (xtd::forms::control_appearance value) -> control &
 Sets control appearance.
virtual auto controls () noexcept -> control_collection &
 Gets the collection of controls contained within the control.
virtual auto controls () const noexcept -> const control_collection &
 Gets the collection of controls contained within the control.
virtual auto created () const noexcept -> bool
 Gets a value indicating whether the control has been created.
virtual auto cursor () const noexcept -> xtd::forms::cursor
 Gets the cursor that is displayed when the mouse pointer is over the control.
virtual auto cursor (const xtd::forms::cursor &value) -> control &
 Sets the cursor that is displayed when the mouse pointer is over the control.
virtual auto cursor (xtd::null_ptr) -> control &
 Resets the cursor that is displayed when the mouse pointer is over the control.
virtual auto display_rectangle () const noexcept -> xtd::drawing::rectangle
 Gets the rectangle that represents the display area of the control.
virtual auto dock () const noexcept -> xtd::forms::dock_style
 Gets which control borders are docked to its parent control and determines how a control is resized with its parent.
virtual auto dock (xtd::forms::dock_style value) -> control &
 Sets which control borders are docked to its parent control and determines how a control is resized with its parent.
virtual auto double_buffered () const noexcept -> bool
 Gets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker.
virtual auto double_buffered (bool value) -> control &
 Sets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker.
virtual auto enabled () const noexcept -> bool
 Gets a value indicating whether the control can respond to user interaction.
virtual auto enabled (bool value) -> control &
 Sets a value indicating whether the control can respond to user interaction.
virtual auto focused () const noexcept -> bool
 Gets a value indicating whether the control has input focus.
virtual auto font () const noexcept -> xtd::drawing::font
 Gets the font of the text displayed by the control.
virtual auto font (const xtd::drawing::font &value) -> control &
 Sets the font of the text displayed by the control.
virtual auto font (xtd::null_ptr) -> control &
 Resets the font of the text displayed by the control.
virtual auto fore_color () const noexcept -> xtd::drawing::color
 Gets the foreground color of the control.
virtual auto fore_color (const xtd::drawing::color &value) -> control &
 Sets the foreground color of the control.
virtual auto fore_color (xtd::null_ptr) -> control &
 Resets the foreground color of the control.
auto handle () const -> xtd::intptr override
 Gets the window handle that the control is bound to.
virtual auto height () const noexcept -> xtd::int32
 Gets the height of the control.
virtual auto height (xtd::int32 value) -> control &
 Sets the height of the control.
auto invoke_required () const noexcept -> bool override
 Gets a value indicating whether the caller must call an invoke method when making method calls to the control because the caller is on a different thread than the one the control was created on.
auto is_handle_created () const noexcept -> bool
 Gets a value indicating whether the control has a handle associated with it.
virtual auto left () const noexcept -> xtd::int32
 Gets the distance, in pixels, between the left edge of the control and the left edge of its container's client area.
virtual auto left (xtd::int32 value) -> control &
 Sets the distance, in pixels, between the left edge of the control and the left edge of its container's client area.
virtual auto location () const noexcept -> xtd::drawing::point
 Gets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container.
virtual auto location (const xtd::drawing::point &value) -> control &
 Sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container.
virtual auto margin () const noexcept -> xtd::forms::padding
 Gets the space between controls.
virtual auto margin (const xtd::forms::padding &value) -> control &
 Sets the space between controls.
virtual auto maximum_client_size () const noexcept -> const xtd::drawing::size &
 Gets the client size that is the upper limit that xtd::forms::control::get_preferred_size can specify.
virtual auto maximum_client_size (const xtd::drawing::size &size) -> control &
 Sets the client size that is the upper limit that xtd::forms::control::get_preferred_size can specify.
virtual auto maximum_size () const noexcept -> const xtd::drawing::size &
 Gets the size that is the upper limit that xtd::forms::control::get_preferred_size can specify.
virtual auto maximum_size (const xtd::drawing::size &value) -> control &
 Sets the size that is the upper limit that xtd::forms::control::get_preferred_size can specify.
virtual auto minimum_client_size () const noexcept -> const xtd::drawing::size &
 Gets the client size that is the lower limit that xtd::forms::control::get_preferred_size can specify.
virtual auto minimum_client_size (const xtd::drawing::size &value) -> control &
 Sets the client size that is the lower limit that xtd::forms::control::get_preferred_size can specify.
virtual auto minimum_size () const noexcept -> const xtd::drawing::size &
 Gets the size that is the lower limit that xtd::forms::control::get_preferred_size can specify.
virtual auto minimum_size (const xtd::drawing::size &value) -> control &
 Sets the size that is the lower limit that xtd::forms::control::get_preferred_size can specify.
auto native_handle () const noexcept -> xtd::intptr
 Gets the native handle that the control is bound to.
virtual auto name () const noexcept -> const xtd::string &
 Gets the name of the control.
virtual auto name (const xtd::string &value) -> control &
 Sets the name of the control.
virtual auto padding () const noexcept -> xtd::forms::padding
 Gets padding within the control.
virtual auto padding (const xtd::forms::padding &value) -> control &
 Sets padding within the control.
virtual auto parent () const noexcept -> std::optional< xtd::forms::control_ref >
 Gets the parent container of the control.
virtual auto parent (const control &value) -> control &
 Sets the parent container of the control.
virtual auto parent (xtd::null_ptr) -> control &
 Resets the parent container of the control.
virtual auto product_name () const noexcept -> xtd::string
 Gets the product name of the assembly containing the control.
auto recreating_handle () const noexcept -> bool
 Gets a value indicating whether the control is currently re-creating its handle.
virtual auto region () const noexcept -> const xtd::drawing::region &
 Gets the window region associated with the control.
virtual auto region (const xtd::drawing::region &value) -> control &
 Sets the window region associated with the control.
virtual auto right () const noexcept -> xtd::int32
 Gets the distance, in pixels, between the right edge of the control and the left edge of its container's client area.
virtual auto right_to_left () const noexcept -> xtd::forms::right_to_left
 Gets a value indicating whether control's elements are aligned to support locales using right-to-left fonts.
virtual auto right_to_left (xtd::forms::right_to_left value) -> control &
 Sets a value indicating whether control's elements are aligned to support locales using right-to-left fonts.
virtual auto right_to_left (xtd::null_ptr) -> control &
 Resets a value indicating whether control's elements are aligned to support locales using right-to-left fonts.
virtual auto size () const noexcept -> xtd::drawing::size
 Gets the height and width of the control.
virtual auto size (const xtd::drawing::size &value) -> control &
 Sets the height and width of the control.
virtual auto style_sheet () const noexcept -> xtd::forms::style_sheets::style_sheet
 Gets the contol style sheet.
virtual auto style_sheet (const xtd::forms::style_sheets::style_sheet &value) -> control &
 Sets the contol style sheet.
virtual auto style_sheet (const xtd::string &value) -> control &
 Sets the contol style sheet.
virtual auto style_sheet (xtd::null_ptr) -> control &
 Resets the contol style sheet.
virtual auto tab_stop () const noexcept -> bool
 Gets a value indicating whether the user can give the focus to this control using the TAB key.
virtual auto tab_stop (bool value) -> control &
 Sets a value indicating whether the user can give the focus to this control using the TAB key.
virtual auto tag () const noexcept -> const xtd::any_object &
 Gets the object that contains data about the control.
virtual auto tag (const xtd::any_object &value) -> control &
 Sets the object that contains data about the control.
virtual auto text () const noexcept -> const xtd::string &
 Gets the text associated with this control.
virtual auto text (const xtd::string &value) -> control &
 Sets the text associated with this control.
auto toolkit_handle () const noexcept -> xtd::intptr
 Gets the toolkit handle that the control is bound to.
virtual auto top () const noexcept -> xtd::int32
 Gets the distance, in pixels, between the top edge of the control and the top edge of its container's client area.
virtual auto top (xtd::int32 value) -> control &
 Sets the distance, in pixels, between the top edge of the control and the top edge of its container's client area.
virtual auto top_level_control () const noexcept -> std::optional< xtd::forms::control_ref >
 Gets the parent control that is not parented by another Windows Forms control. Typically, this is the outermost Form that the control is contained in.
virtual auto visible () const noexcept -> bool
 Gets a value indicating whether the control and all its child controls are displayed.
virtual auto visible (bool value) -> control &
 Sets a value indicating whether the control and all its child controls are displayed.
virtual auto width () const noexcept -> xtd::int32
 Gets the width of the control.
virtual auto width (xtd::int32 value) -> control &
 Sets the width of the control.
auto begin_invoke (xtd::delegate< void()> method) -> xtd::async_result override
 Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on.
auto begin_invoke (xtd::delegate< void(xtd::array< xtd::any_object >)> method, const xtd::array< xtd::any_object > &args) -> xtd::async_result override
 Executes the specified delegate asynchronously with the specified arguments, on the thread that the control's underlying handle was created on.
virtual auto bring_to_front () -> void
 Brings the control to the front of the z-order.
auto compare_to (const control &value) const noexcept -> xtd::int32 override
auto create_control () -> void
 Forces the creation of the visible control, including the creation of the handle and any visible child controls.
auto create_graphics () const -> xtd::drawing::graphics
 Creates the xtd::drawing::graphics for the control.
virtual auto destroy_control () -> void
 Forces the destruction of the visible control, including the destruction of the handle and any visible child controls.
auto end_invoke (xtd::async_result async) -> std::optional< xtd::object_ref > override
 Retrieves the return value of the asynchronous operation represented by the async_result_invoke passed.
auto equals (const xtd::object &obj) const noexcept -> bool override
 Determines whether the specified object is equal to the current object.
auto equals (const control &value) const noexcept -> bool override
 Determines whether the specified object is equal to the current object.
auto focus () -> bool
 Sets input focus to the control.
auto get_auto_size_mode () const -> xtd::forms::auto_size_mode
 Gets a value indicating how a control will behave when its auto_size property is enabled.
auto get_child_index (xtd::intptr child) const -> xtd::usize
 Retrieves the index of a control within the control collection.
auto get_child_index (xtd::intptr child, bool &throw_exception) const -> xtd::usize
 Retrieves the index of the specified child control within the control collection, and optionally raises an exception if the specified control is not within the control collection.
auto get_hash_code () const noexcept -> xtd::usize override
 Serves as a hash function for a particular type.
virtual auto hide () -> void
 Conceals the control from the user.
virtual auto invalidate () const -> void
 Invalidates the entire surface of the control and causes the control to be redrawn.
virtual auto invalidate (bool invalidate_children) const -> void
 Invalidates a specific region of the control and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control.
virtual auto invalidate (const xtd::drawing::rectangle &rect) const -> void
 Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control.
virtual auto invalidate (const xtd::drawing::rectangle &rect, bool invalidate_children) const -> void
 Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control.
virtual auto invalidate (const xtd::drawing::region &region) const -> void
 Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control.
virtual auto invalidate (const xtd::drawing::region &region, bool invalidate_children) const -> void
 Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control.
auto invoke (xtd::delegate< void()> method) -> std::optional< xtd::object_ref > override
 Executes the specified delegate on the thread that owns the control's underlying window handle.
auto invoke (xtd::delegate< void(xtd::array< xtd::any_object >)> method, const xtd::array< xtd::any_object > &args) -> std::optional< xtd::object_ref > override
 Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments.
auto invoke (xtd::delegate< void(xtd::array< xtd::any_object >)> method, const xtd::any_object &arg) -> std::optional< xtd::object_ref > override
 Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments.
auto perform_layout () -> void
 Forces the control to apply layout logic to all its child controls.
auto point_to_client (const xtd::drawing::point &p) const -> xtd::drawing::point
 Computes the location of the specified screen point into client coordinates.
auto point_to_screen (const xtd::drawing::point &p) const -> xtd::drawing::point
 Computes the location of the specified client point into screen coordinates.
auto post_message (xtd::intptr hwnd, xtd::int32 msg, xtd::intptr wparam, xtd::intptr lparam) const -> bool
 Places (posts) a message in the message queue with specified hwnd, message, wparam and lparam.
virtual auto pre_process_message (const xtd::forms::message &message) -> bool
 Preprocesses keyboard or input messages within the message loop before they are dispatched.
virtual auto refresh () const -> void
 Forces the control to invalidate its client area and immediately redraw itself and any child controls.
auto resume_layout () -> void
 Resumes usual layout logic.
auto resume_layout (bool perform_layout) -> void
 Resumes usual layout logic, optionally forcing an immediate layout of pending layout requests.
auto send_message (xtd::intptr hwnd, xtd::int32 msg, xtd::intptr wparam, xtd::intptr lparam) const -> xtd::intptr
 Send a message with specified hwnd, message, wparam and lparam.
auto set_auto_size_mode (xtd::forms::auto_size_mode auto_size_modeauto_size_mode) -> void
 Sets a value indicating how a control will behave when its auto_size property is enabled.
auto set_bounds (xtd::int32 x, xtd::int32 y, xtd::int32 width, xtd::int32 height) -> void
 Sets the bounds of the control to the specified location and size.
auto set_bounds (xtd::int32 x, xtd::int32 y, xtd::int32 width, xtd::int32 height, xtd::forms::bounds_specified specified) -> void
 Sets the specified bounds of the control to the specified location and size.
virtual auto show () -> void
 Displays the control to the user.
auto suspend_layout () -> void
 Temporarily suspends the layout logic for the control.
virtual auto update () const -> void
 Causes the control to redraw the invalidated regions within its client area.
auto operator<< (control &child) -> control &
 Add child control.
auto operator>> (control &child) -> control &
 Remove child control.
 object ()=default
 Create a new instance of the ultimate base class object.
virtual auto get_type () const noexcept -> type_object
 Gets the type of the current instance.
template<typename object_t>
auto memberwise_clone () const -> xtd::unique_ptr_object< object_t >
 Creates a shallow copy of the current object.
virtual auto compare_to (const control &obj) const noexcept -> xtd::int32=0
 Compares the current instance with another object of the same type.
virtual auto equals (const control &) const noexcept -> bool=0
 Indicates whether the current object is equal to another object of the same type.
static auto check_for_illegal_cross_thread_calls () noexcept -> bool
 Gets a value indicating whether to catch calls on the wrong thread that access a xtd::forms::contrtol::handle property when an application is being debugged.
static auto check_for_illegal_cross_thread_calls (bool value) -> void
 Sets a value indicating whether to catch calls on the wrong thread that access a xtd::forms::contrtol::handle property when an application is being debugged.
static auto modifier_keys () noexcept -> xtd::forms::keys
 Gets a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state.
static auto mouse_buttons () noexcept -> xtd::forms::mouse_buttons
 Gets a value indicating which of the mouse buttons is in a pressed state.
static auto mouse_position () noexcept -> xtd::drawing::point
 Gets the position of the mouse cursor in screen coordinates.
static auto create () -> control
 A factory to create a specified control.
static auto create (const xtd::drawing::point &location) -> control
 A factory to create a specified control with specified location.
static auto create (const xtd::drawing::point &location, const xtd::drawing::size &size) -> control
 A factory to create a specified control with specified location, and size.
static auto create (const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> control
 A factory to create a specified control with specified location, size, and name.
static auto create (const control &paren) -> control
 A factory to create a specified control with specified parent.
static auto create (const control &parent, const xtd::drawing::point &location) -> control
 A factory to create a specified control with specified parent, location, size, and name.
static auto create (const control &parent, const xtd::drawing::point &location, const xtd::drawing::size &size) -> control
 A factory to create a specified control with specified parent, location, and size.
static auto create (const control &parent, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> control
 A factory to create a specified control with specified parent, location, size, and name.
template<typename control_t>
static auto create () -> control_t
 A factory to create a specified control.
template<typename control_t>
static auto create (const xtd::drawing::point &location) -> control_t
 A factory to create a specified control with specified location.
template<typename control_t>
static auto create (const xtd::drawing::point &location, const xtd::drawing::size &size) -> control_t
 A factory to create a specified control with specified location, and size.
template<typename control_t>
static auto create (const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> control_t
 A factory to create a specified control with specified location, size, and name.
template<typename control_t>
static auto create (const control &parent) -> control_t
 A factory to create a specified control with specified parent.
template<typename control_t>
static auto create (const control &parent, const xtd::drawing::point &location) -> control_t
 A factory to create a specified control with specified parent, and location.
template<typename control_t>
static auto create (const control &parent, const xtd::drawing::point &location, const xtd::drawing::size &size) -> control_t
 A factory to create a specified control with specified parent, location, and size.
template<typename control_t>
static auto create (const control &parent, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> control_t
 A factory to create a specified control with specified parent, location, size, and name.
template<typename control_t>
static auto create (const xtd::string &text) -> control_t
 A factory to create a specified control with specified text.
template<typename control_t>
static auto create (const xtd::string &text, const xtd::drawing::point &location) -> control_t
 A factory to create a specified control with specified text, and location.
template<typename control_t>
static auto create (const xtd::string &text, const xtd::drawing::point &location, const xtd::drawing::size &size) -> control_t
 A factory to create a specified control with specified text, location, and size.
template<typename control_t>
static auto create (const xtd::string &text, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> control_t
 A factory to create a specified control with specified text, location,size, and name.
template<typename control_t>
static auto create (const control &parent, const xtd::string &text) -> control_t
 A factory to create a specified control with specified parent, and text.
template<typename control_t>
static auto create (const control &parent, const xtd::string &text, const xtd::drawing::point &location) -> control_t
 A factory to create a specified control with specified parent, text, and location.
template<typename control_t>
static auto create (const control &parent, const xtd::string &text, const xtd::drawing::point &location, const xtd::drawing::size &size) -> control_t
 A factory to create a specified control with specified parent, text, location, and size.
template<typename control_t>
static auto create (const control &parent, const xtd::string &text, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> control_t
 A factory to create a specified control with specified parent, text, location, size, and name.
static auto from_child_handle (xtd::intptr handle) -> std::optional< xtd::forms::control_ref >
 Retrieves the control that contains the specified handle.
static auto from_handle (xtd::intptr handle) -> std::optional< xtd::forms::control_ref >
 Returns the control that is currently associated with the specified handle.
template<typename object_a_t, typename object_b_t>
static auto equals (const object_a_t &object_a, const object_b_t &object_b) noexcept -> bool
 Determines whether the specified object instances are considered equal.
template<typename object_a_t, typename object_b_t>
static auto reference_equals (const object_a_t &object_a, const object_b_t &object_b) noexcept -> bool
 Determines whether the specified object instances are the same instance.
auto control_state () const noexcept -> xtd::forms::visual_styles::control_state
 Gets state.
virtual auto default_cursor () const noexcept -> xtd::forms::cursor
 Gets the default cursor for the control.
virtual auto default_font () const noexcept -> xtd::drawing::font
 Gets the default font of the control.
virtual auto default_size () const noexcept -> xtd::drawing::size
 Gets the default size of the control.
virtual auto create_handle () -> void
 Creates a handle for the control.
virtual auto destroy_handle () -> void
 Destroys the handle associated with the control.
virtual auto def_wnd_proc (xtd::forms::message &message) -> void
 Sends the specified message to the default window procedure.
auto get_style (xtd::forms::control_styles flag) const noexcept -> bool
 Retrieves the value of the specified control style bit for the control.
virtual auto measure_control () const noexcept -> xtd::drawing::size
 Measure this control.
auto measure_text () const noexcept -> xtd::drawing::size
 Measure this control text.
virtual auto on_auto_size_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::auto_size_changed event.
virtual auto on_back_color_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::back_color_changed event.
virtual auto on_background_image_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::background_image_changed event.
virtual auto on_background_image_layout_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::background_image_layout_changed event.
virtual auto on_control_appearance_changed (const xtd::event_args &e) -> void
 Raises the control::control_appearance_changed event.
virtual auto on_click (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::click event.
virtual auto on_client_size_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::client_size_changed event.
virtual auto on_control_added (const xtd::forms::control_event_args &e) -> void
 Raises the xtd::forms::control::control_added event.
virtual auto on_control_removed (const xtd::forms::control_event_args &e) -> void
 Raises the xtd::forms::control::control_removed event.
virtual auto on_create_control () -> void
 Raises the xtd::forms::control::create_control event.
virtual auto on_cursor_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::cursor_changed event.
virtual auto on_destroy_control () -> void
 Raises the xtd::forms::control::destroy_control event.
virtual auto on_dock_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::dock_changed event.
virtual auto on_double_click (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::double_click event.
virtual auto on_enabled_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::enabled_changed event.
virtual auto on_fore_color_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::fore_color_changed event.
virtual auto on_font_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::font_changed event.
virtual auto on_got_focus (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::got_focus event.
virtual auto on_handle_destroyed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::handle_destroyed event.
virtual auto on_help_requested (xtd::forms::help_event_args &e) -> void
 Raises the xtd::forms::control::help_requested event.
virtual auto on_key_down (xtd::forms::key_event_args &e) -> void
 Raises the xtd::forms::control::key_down event.
virtual auto on_key_press (xtd::forms::key_press_event_args &e) -> void
 Raises the xtd::forms::control::key_press event.
virtual auto on_key_up (xtd::forms::key_event_args &e) -> void
 Raises the xtd::forms::control::key_up event.
virtual auto on_layout (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::layout event.
virtual auto on_location_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::location_changed event.
virtual auto on_lost_focus (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::lost_focus event.
virtual auto on_mouse_click (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_click event.
virtual auto on_mouse_double_click (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_double_click event.
virtual auto on_mouse_down (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_down event.
virtual auto on_mouse_enter (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::mouse_enter event.
virtual auto on_mouse_horizontal_wheel (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_horizontal_wheel event.
virtual auto on_mouse_leave (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::mouse_leave event.
virtual auto on_mouse_move (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_move event.
virtual auto on_mouse_up (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_up event.
virtual auto on_mouse_wheel (const xtd::forms::mouse_event_args &e) -> void
 Raises the xtd::forms::control::mouse_wheel event.
virtual auto on_move (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::move event.
virtual auto on_paint (xtd::forms::paint_event_args &e) -> void
 Raises the xtd::forms::control::paint event.
virtual auto on_paint_background (xtd::forms::paint_event_args &e) -> void
 Paints the background of the xtd::forms::control.
virtual auto on_parent_back_color_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::parent_back_color_changed event.
virtual auto on_parent_cursor_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::parent_cursor_changed event.
virtual auto on_parent_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::parent_changed event.
virtual auto on_parent_enabled_changed (const xtd::event_args &e) -> void
 Raises the xtd::control::enabled_changed event when the xtd::control::enabled property value of the control's container changes..
virtual auto on_parent_fore_color_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::parent_fore_color_changed event.
virtual auto on_parent_font_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::parent_font_changed event.
virtual auto on_resize (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::region event.
virtual auto on_region_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::region_changed event.
virtual auto on_right_to_left_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::right_to_left_changed event.
virtual auto on_size_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::size_changed event.
virtual auto on_style_sheet_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::style_sheet_changed event.
virtual auto on_system_colors_changed (const xtd::event_args &e) -> void
 Raises the control::system_colors_changed event.
virtual auto on_tab_stop_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::tab_stop_changed event.
virtual auto on_text_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::text_changed event.
virtual auto on_visible_changed (const xtd::event_args &e) -> void
 Raises the xtd::forms::control::visible_changed event.
auto post_recreate_handle () noexcept -> void
virtual auto recreate_handle () -> void
 Forces the re-creation of the handle for the control.
virtual auto set_bounds_core (xtd::int32 x, xtd::int32 y, xtd::int32 width, xtd::int32 height, xtd::forms::bounds_specified specified) -> void
 Performs the work of setting the specified bounds of this control.
auto set_can_focus (bool value) -> void
 Sets a value indicating whether the control can receive focus.
virtual auto set_text (const xtd::string &text) -> void
 Sets the text associated with this control.
virtual auto set_client_size_core (xtd::int32 width, xtd::int32 height) -> void
 Sets the size of the client area of the control.
auto set_parent (xtd::intptr handle) -> void
 Sets the parent handle of the control.
auto set_style (xtd::forms::control_styles flag, bool value) -> void
 Sets a specified control_styles flag to either true or false.
 component ()
 Initialises a new instance of the component class.
auto design_mode () const noexcept -> bool
 Gets a value that indicates whether the component is currently in design mode.
static auto set_mouse_buttons (xtd::forms::mouse_buttons value) -> void
 Sets a value indicating which of the mouse buttons is in a pressed state.

Member Enumeration Documentation

◆ hit_area

Defines constants that represent areas in a xtd::forms::month_calendar control.

Remarks
This enumeration includes specific areas of the xtd::forms::month_calendar control as its enumerated values. The xtd::forms::month_calendar::hit_area member of xtd::forms::month_calendar::hit_test_info is one of these enumerated values, and indicates which portion of a month calendar is under a specified point.
Enumerator
nowhere 

The specified point is either not on the month calendar control, or it is in an inactive portion of the control.

title_background 

The specified point is over the background of a month's title.

title_month 

The specified point is in a month's title bar, over a month name.

title_year 

The specified point is in a month's title bar, over the year value.

next_month_button 

The specified point is over the button at the upper-right corner of the control. If the user clicks here, the month calendar scrolls its display to the next month or set of months.

prev_month_button 

The specified point is over the button at the upper-left corner of the control. If the user clicks here, the month calendar scrolls its display to the previous month or set of months.

calendar_background 

The specified point is part of the calendar's background.

date 

The specified point is on a date within the calendar. The System.Windows.Forms.xtd::forms::month_calendar::hit_test_info .xtd::forms::month_calendar::hit_test_info::time property of System.Windows.Forms.xtd::forms::month_calendar::hit_test_info is set to the date at the specified point.

next_month_date 

The specified point is over a date from the next month (partially displayed at the top of the currently displayed month). If the user clicks here, the month calendar scrolls its display to the next month or set of months.

prev_month_date 

The specified point is over a date from the previous month (partially displayed at the top of the currently displayed month). If the user clicks here, the month calendar scrolls its display to the previous month or set of months.

day_of_week 

The specified point is over a day abbreviation ("Fri", for example). The System.Windows.Forms.xtd::forms::month_calendar::hit_test_info .xtd::forms::month_calendar::hit_test_info::time property of System.Windows.Forms.xtd::forms::month_calendar::hit_test_info is set to January 1, 0001.

week_numbers 

The specified point is over a week number. This occurs only if the xtd::forms::month_calendar::show_week_numbers property of xtd::forms::month_calendar is enabled. The System.Windows.Forms.xtd::forms::month_calendar::hit_test_info .xtd::forms::month_calendar::hit_test_info::time property of System.Windows.Forms.xtd::forms::month_calendar::hit_test_info is set to the corresponding date in the leftmost column.

today_link 

The specified point is on the today link at the bottom of the month calendar control.

Constructor & Destructor Documentation

◆ month_calendar()

xtd::forms::month_calendar::month_calendar ( )

Initializes a new instance of the month_calendar class.

Examples
The following code example demonstrates the use of month_calendar control.
#include <xtd/xtd>
#include <chrono>
using namespace std::chrono;
class form1 : public form {
public:
form1() {
text("Month calendar example");
month_calendar1.parent(*this);
month_calendar1.location({10, 10});
month_calendar1.date_changed += delegate_(object&, const event_args & e) {
label1.text(string::format("selection range: [{:d}, {:d}]", month_calendar1.selection_start(), month_calendar1.selection_end()));
};
month_calendar1.selection_range({date_time::now(), date_time::now()});
month_calendar1.min_date(date_time::now().subtract(months(3)));
month_calendar1.max_date(date_time::now().add(months(3)));
label1.parent(*this);
label1.auto_size(true);
label1.location({10, 180});
label1.text(string::format("selection range: [{:d}, {:d}]", month_calendar1.selection_start(), month_calendar1.selection_end()));
}
private:
month_calendar month_calendar1;
label label1;
};
auto main() -> int {
application::run(form1 {});
}
Remarks
The xtd::forms::month_calendar constructor creates a new xtd::forms::month_calendar.

Member Function Documentation

◆ annually_bolded_dates() [1/2]

auto xtd::forms::month_calendar::annually_bolded_dates ( ) const -> xtd::array< xtd::date_time >
nodiscardnoexcept

Gets the array of xtd::date_time objects that determines which annual days are displayed in bold.

Returns
An array of xtd::date_time objects.
Remarks
Using this property, you can assign an array of annual bold dates. When you assign an array of dates, the existing dates are first cleared.

◆ annually_bolded_dates() [2/2]

auto xtd::forms::month_calendar::annually_bolded_dates ( const xtd::array< xtd::date_time > & value) -> month_calendar &

Sets the array of xtd::date_time objects that determines which annual days are displayed in bold.

Parameters
valueAn array of xtd::date_time objects.
Returns
Current month_calendar.
Remarks
Using this property, you can assign an array of bold dates. When you assign an array of dates, the existing dates are first cleared.

◆ bolded_dates() [1/2]

auto xtd::forms::month_calendar::bolded_dates ( ) const -> xtd::array< xtd::date_time >
nodiscardnoexcept

Gets the array of xtd::date_time bjects that determines which nonrecurring dates are displayed in bold.

Returns
An array of xtd::date_time objects.
Remarks
Using this property, you can assign an array of annual bold dates. When you assign an array of dates, the existing dates are first cleared.

◆ bolded_dates() [2/2]

auto xtd::forms::month_calendar::bolded_dates ( const xtd::array< xtd::date_time > & value) -> month_calendar &

Sets the array of xtd::date_time bjects that determines which nonrecurring dates are displayed in bold.

Parameters
valueAn array of xtd::date_time objects.
Returns
Current month_calendar.
Remarks
Using this property, you can assign an array of bold dates. When you assign an array of dates, the existing dates are first cleared.

◆ calendar_dimensions() [1/2]

auto xtd::forms::month_calendar::calendar_dimensions ( ) const -> const xtd::drawing::size &
nodiscardnoexcept

Gets the number of columns and rows of months displayed.

Returns
A xtd::drawing::size with the number of columns and rows to use to display the calendar.
Remarks
Only one calendar year is displayed at a time, and the maximum number of months that can be displayed is 12. Valid combinations of columns and rows make a maximum product of 12; for values greater than 12, the display is modified on a best-fit basis.

◆ calendar_dimensions() [2/2]

auto xtd::forms::month_calendar::calendar_dimensions ( const xtd::drawing::size & value) -> month_calendar &

Sets the number of columns and rows of months displayed.

Parameters
valueA xtd::drawing::size with the number of columns and rows to use to display the calendar.
Returns
Current month_calendar.
Remarks
Only one calendar year is displayed at a time, and the maximum number of months that can be displayed is 12. Valid combinations of columns and rows make a maximum product of 12; for values greater than 12, the display is modified on a best-fit basis.

◆ first_day_of_week() [1/2]

auto xtd::forms::month_calendar::first_day_of_week ( ) const -> xtd::forms::day
nodiscardnoexcept

Gets the first day of the week as displayed in the month calendar.

Returns
One of the xtd::forms::day values. The default is xtd::forms::day::default_day.

◆ first_day_of_week() [2/2]

auto xtd::forms::month_calendar::first_day_of_week ( xtd::forms::day value) -> month_calendar &

Sets the first day of the week as displayed in the month calendar.

Parameters
valueOne of the xtd::forms::day values. The default is xtd::forms::day::default_day.
Returns
Current month_calendar.

◆ max_date() [1/2]

auto xtd::forms::month_calendar::max_date ( ) const -> xtd::date_time
nodiscardnoexcept

Gets the maximum date that can be selected in the control.

Returns
The maximum date that can be selected in the control.

◆ max_date() [2/2]

auto xtd::forms::month_calendar::max_date ( xtd::date_time value) -> month_calendar &

Sets the maximum date that can be selected in the control.

Parameters
valueThe maximum date that can be selected in the control.
Returns
Current month_calendar.

◆ max_selection_count() [1/2]

auto xtd::forms::month_calendar::max_selection_count ( ) const -> xtd::uint32
nodiscardnoexcept

Gets the maximum number of days that can be selected in a month calendar control.

Returns
The maximum number of days that you can select. The default is 7.
Exceptions
xtd::argument_exceptionThe value is less than 1.
Remarks
Setting this property does not effect the current selection range.
It is important to remember that the xtd::forms::month_calendar::max_selection_count property represents the number of days in the selection, not the difference between xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end. For example, if xtd::forms::month_calendar::max_selection_count is 7 (the default), xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end can be no more than six days apart.

◆ max_selection_count() [2/2]

auto xtd::forms::month_calendar::max_selection_count ( xtd::uint32 value) -> month_calendar &

Sets the maximum number of days that can be selected in a month calendar control.

Parameters
valueThe maximum number of days that you can select. The default is 7.
Returns
Current month_calendar.
Exceptions
xtd::argument_exceptionThe value is less than 1.
Remarks
Setting this property does not effect the current selection range.
It is important to remember that the xtd::forms::month_calendar::max_selection_count property represents the number of days in the selection, not the difference between xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end. For example, if xtd::forms::month_calendar::max_selection_count is 7 (the default), xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end can be no more than six days apart.

◆ min_date() [1/2]

auto xtd::forms::month_calendar::min_date ( ) const -> xtd::date_time
nodiscardnoexcept

Gets the minimum date that can be selected in the control.

Returns
The minimum date that can be selected in the control.

◆ min_date() [2/2]

auto xtd::forms::month_calendar::min_date ( xtd::date_time value) -> month_calendar &

Sets the minimum date that can be selected in the control.

Parameters
valueThe minimum date that can be selected in the control.
Returns
Current month_calendar.

◆ monthly_bolded_dates() [1/2]

auto xtd::forms::month_calendar::monthly_bolded_dates ( ) const -> xtd::array< xtd::date_time >
nodiscardnoexcept

Gets the array of xtd::date_time objects that determine which monthly days to bold.

Returns
An array of xtd::date_time objects.
Remarks
Using this property, you can assign an array of annual bold dates. When you assign an array of dates, the existing dates are first cleared.

◆ monthly_bolded_dates() [2/2]

auto xtd::forms::month_calendar::monthly_bolded_dates ( const xtd::array< xtd::date_time > & value) -> month_calendar &

Sets the array of xtd::date_time objects that determine which monthly days to bold.

Parameters
valueAn array of xtd::date_time objects.
Returns
Current month_calendar.
Remarks
Using this property, you can assign an array of bold dates. When you assign an array of dates, the existing dates are first cleared.

◆ selection_end() [1/2]

auto xtd::forms::month_calendar::selection_end ( ) const -> xtd::date_time
nodiscardnoexcept

Gets the end date of the selected range of dates.

Returns
A xtd::date_time indicating the last date in the selection range.
Remarks
If you set the value of the xtd::forms::month_calendar::selection_end property to a date that is earlier than the current value of the xtd::forms::month_calendar::selection_start property, xtd::forms::month_calendar::selection_start is automatically set equal to xtd::forms::month_calendar::selection_end.
If you set a date in xtd::forms::month_calendar::selection_end that causes the selection to exceed the number of days specified by the xtd::forms::month_calendar::max_selection_count property, the value of xtd::forms::month_calendar::selection_start is adjusted; xtd::forms::month_calendar::selection_start is automatically set so that the number of days selected is equal to xtd::forms::month_calendar::max_selection_count.
Note
xtd::forms::month_calendar::max_selection_count represents the number of days in the selection, not the difference between xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end. For example, if xtd::forms::month_calendar::max_selection_count is 7 (the default), then xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end can be no more than six days apart.
Setting the xtd::forms::month_calendar::selection_range for a xtd::forms::month_calendar control that has visual styles enabled will result in the selection range not painting correctly on the control.

◆ selection_end() [2/2]

auto xtd::forms::month_calendar::selection_end ( xtd::date_time value) -> month_calendar &

Sets the end date of the selected range of dates.

Parameters
valueA xtd::date_time indicating the last date in the selection range.
Returns
Current month_calendar.
Remarks
If you set the value of the xtd::forms::month_calendar::selection_end property to a date that is earlier than the current value of the xtd::forms::month_calendar::selection_start property, xtd::forms::month_calendar::selection_start is automatically set equal to xtd::forms::month_calendar::selection_end.
If you set a date in xtd::forms::month_calendar::selection_end that causes the selection to exceed the number of days specified by the xtd::forms::month_calendar::max_selection_count property, the value of xtd::forms::month_calendar::selection_start is adjusted; xtd::forms::month_calendar::selection_start is automatically set so that the number of days selected is equal to xtd::forms::month_calendar::max_selection_count.
Note
xtd::forms::month_calendar::max_selection_count represents the number of days in the selection, not the difference between xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end. For example, if xtd::forms::month_calendar::max_selection_count is 7 (the default), then xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end can be no more than six days apart.
Setting the xtd::forms::month_calendar::selection_range for a xtd::forms::month_calendar control that has visual styles enabled will result in the selection range not painting correctly on the control.

◆ selection_range() [1/2]

auto xtd::forms::month_calendar::selection_range ( ) const -> xtd::forms::selection_range
nodiscardnoexcept

Gets the selected range of dates for a month calendar control.

Returns
A xtd::forms::selection_range with the start and end dates of the selected range.
Remarks
Setting this property is functionally equivalent to using the xtd::forms::month_calendar::set_selection_range method. You can set the start and end dates separately by setting either the xtd::forms::month_calendar::selection_start or xtd::forms::month_calendar::selection_end properties. You cannot change the start and end dates by setting the xtd::forms::selection_range::start or xtd::forms::selection_range::end property values of the xtd::forms::month_calendar::selection_range property. You should use xtd::forms::month_calendar::selection_start, xtd::forms::month_calendar::selection_end, or xtd::forms::month_calendar::set_selection_range.
If the Start property value of the xtd::forms::month_calendar::selection_range is greater than its xtd::forms::selection_rande::end property value, the dates are swapped; the xtd::forms::selection_range::end property value becomes the starting date, and xtd::forms::selection_range::start property value becomes the end date.

◆ selection_range() [2/2]

auto xtd::forms::month_calendar::selection_range ( const xtd::forms::selection_range & value) -> month_calendar &

Sets the selected range of dates for a month calendar control.

Parameters
valueA xtd::forms::selection_range with the start and end dates of the selected range.
Returns
Current month_calendar.
Remarks
Setting this property is functionally equivalent to using the xtd::forms::month_calendar::set_selection_range method. You can set the start and end dates separately by setting either the xtd::forms::month_calendar::selection_start or xtd::forms::month_calendar::selection_end properties. You cannot change the start and end dates by setting the xtd::forms::selection_range::start or xtd::forms::selection_range::end property values of the xtd::forms::month_calendar::selection_range property. You should use xtd::forms::month_calendar::selection_start, xtd::forms::month_calendar::selection_end, or xtd::forms::month_calendar::set_selection_range.
If the Start property value of the xtd::forms::month_calendar::selection_range is greater than its xtd::forms::selection_rande::end property value, the dates are swapped; the xtd::forms::selection_range::end property value becomes the starting date, and xtd::forms::selection_range::start property value becomes the end date.

◆ selection_start() [1/2]

auto xtd::forms::month_calendar::selection_start ( ) const -> xtd::date_time
nodiscardnoexcept

Gets the start date of the selected range of dates.

Returns
A xtd::date_time indicating the first date in the selection range.
Remarks
If you set the value of the xtd::forms::month_calendar::selection_start property to a date that is later than the current value of the xtd::forms::month_calendar::selection_end property, xtd::forms::month_calendar::selection_end is automatically set equal to xtd::forms::month_calendar::selection_start.
If you set a date in xtd::forms::month_calendar::selection_start that causes the selection to exceed the number of days specified by the xtd::forms::month_calendar::max_selection_count property, the value of xtd::forms::month_calendar::selection_end is adjusted; xtd::forms::month_calendar::selection_end is automatically set so that the number of days selected is equal to xtd::forms::month_calendar::max_selection_count.
Note
xtd::forms::month_calendar::max_selection_count represents the number of days in the selection, not the difference between xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end. For example, if xtd::forms::month_calendar::max_selection_count is 7 (the default), then xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end can be no more than six days apart.
Setting the xtd::forms::month_calendar::selection_range for a xtd::forms::month_calendar control that has visual styles enabled will result in the selection range not painting correctly on the control.

◆ selection_start() [2/2]

auto xtd::forms::month_calendar::selection_start ( xtd::date_time value) -> month_calendar &

Sets the start date of the selected range of dates.

Parameters
valueA xtd::date_time indicating the first date in the selection range.
Returns
Current month_calendar.
Remarks
If you set the value of the xtd::forms::month_calendar::selection_start property to a date that is later than the current value of the xtd::forms::month_calendar::selection_end property, xtd::forms::month_calendar::selection_end is automatically set equal to xtd::forms::month_calendar::selection_start.
If you set a date in xtd::forms::month_calendar::selection_start that causes the selection to exceed the number of days specified by the xtd::forms::month_calendar::max_selection_count property, the value of xtd::forms::month_calendar::selection_end is adjusted; xtd::forms::month_calendar::selection_end is automatically set so that the number of days selected is equal to xtd::forms::month_calendar::max_selection_count.
Note
xtd::forms::month_calendar::max_selection_count represents the number of days in the selection, not the difference between xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end. For example, if xtd::forms::month_calendar::max_selection_count is 7 (the default), then xtd::forms::month_calendar::selection_start and xtd::forms::month_calendar::selection_end can be no more than six days apart.
Setting the xtd::forms::month_calendar::selection_range for a xtd::forms::month_calendar control that has visual styles enabled will result in the selection range not painting correctly on the control.

◆ show_today() [1/2]

auto xtd::forms::month_calendar::show_today ( ) const -> bool
nodiscardnoexcept

Gets a value indicating whether the date represented by the xtd::today_date property is displayed at the bottom of the control.

Returns
true if today's date is displayed; otherwise, false. The default is true.
Remarks
The date is displayed in the format specified by the system settings for the short date format.

◆ show_today() [2/2]

auto xtd::forms::month_calendar::show_today ( bool value) -> month_calendar &

Sets a value indicating whether the date represented by the xtd::today_date property is displayed at the bottom of the control.

Parameters
valuetrue if today's date is displayed; otherwise, false. The default is true.
Returns
Current month_calendar.
Remarks
The date is displayed in the format specified by the system settings for the short date format.

◆ show_today_circle() [1/2]

auto xtd::forms::month_calendar::show_today_circle ( ) const -> bool
nodiscardnoexcept

Gets a value indicating whether today's date is identified with a circle or a square.

Returns
true if today's date is identified with a circle or a square; otherwise, false. The default is true.
Remarks
If xtd::forms::month_calendar::show_today_circle is true, and visual styles are enabled and supported on the computer running the application, today's date will be enclosed in a square, otherwise today's date will be circled.

◆ show_today_circle() [2/2]

auto xtd::forms::month_calendar::show_today_circle ( bool value) -> month_calendar &

Sets a value indicating whether today's date is identified with a circle or a square.

Parameters
valuetrue if today's date is identified with a circle or a square; otherwise, false. The default is true.
Returns
Current month_calendar.
Remarks
If xtd::forms::month_calendar::show_today_circle is true, and visual styles are enabled and supported on the computer running the application, today's date will be enclosed in a square, otherwise today's date will be circled.

◆ show_week_numbers() [1/2]

auto xtd::forms::month_calendar::show_week_numbers ( ) const -> bool
nodiscardnoexcept

Gets a value indicating whether the month calendar control displays week numbers (1-52) to the left of each row of days.

Returns
true if the week numbers are displayed; otherwise, false. The default is false.

◆ show_week_numbers() [2/2]

auto xtd::forms::month_calendar::show_week_numbers ( bool value) -> month_calendar &

Sets a value indicating whether the month calendar control displays week numbers (1-52) to the left of each row of days.

Parameters
valuetrue if the week numbers are displayed; otherwise, false. The default is false.
Returns
Current month_calendar.

◆ single_month_size()

auto xtd::forms::month_calendar::single_month_size ( ) const -> xtd::drawing::size
nodiscardnoexcept

Gets the minimum size to display one month of the calendar.

Returns
The size, in pixels, necessary to fully display one month in the calendar.
Remarks
The size information is presented in the form of the xtd::forms::control::width and xtd::forms::control::height members, representing the minimum width and height required to display one month in the control. The minimum required window size for a month calendar control depends on the currently selected font.

◆ title_back_color() [1/2]

auto xtd::forms::month_calendar::title_back_color ( ) const -> xtd::drawing::color
nodiscardnoexcept

Gets a value indicating the background color of the title area of the calendar.

Returns
A xtd::drawing::color. The default is the system color for active captions.
Remarks
The font color of the days-of-the-week text depends on the xtd::forms::month_calendar::title_back_color property. Setting the xtd::forms::month_calendar::title_back_color equal to the xtd::forms::month_control::back_color for the main display area of the calendar causes the days-of-the-week text to become unreadable.

◆ title_back_color() [2/2]

auto xtd::forms::month_calendar::title_back_color ( const xtd::drawing::color & value) -> month_calendar &

Sets a value indicating the background color of the title area of the calendar.

Parameters
valueA xtd::drawing::color. The default is the system color for active captions.
Returns
Current month_calendar.
Remarks
The font color of the days-of-the-week text depends on the xtd::forms::month_calendar::title_back_color property. Setting the xtd::forms::month_calendar::title_back_color equal to the xtd::forms::control::back_color for the main display area of the calendar causes the days-of-the-week text to become unreadable.

◆ title_fore_color() [1/2]

auto xtd::forms::month_calendar::title_fore_color ( ) const -> xtd::drawing::color
nodiscardnoexcept

Gets a value indicating the foreground color of the title area of the calendar.

Returns
A xtd::drawing::color. The default is the system color for active caption text.

◆ title_fore_color() [2/2]

auto xtd::forms::month_calendar::title_fore_color ( const xtd::drawing::color & value) -> month_calendar &

Sets a value indicating the foreground color of the title area of the calendar.

Parameters
valueA xtd::drawing::color. The default is the system color for active caption text.
Returns
Current month_calendar.

◆ today_date() [1/2]

auto xtd::forms::month_calendar::today_date ( ) const -> const xtd::date_time &
nodiscardnoexcept

Gets the value that is used by xtd::forms::month_calendar as today's date.

Returns
A xtd::date_time representing today's date. The default value is the current system date.
Remarks
By default, the xtd::forms::month_calendar::today_date property returns the current system date, and the xtd::forms::month_calendar::today_date_set property is false. Setting the TodayDate property sets the xtd::forms::month_calendar::today_date_set property to true and, from that point, the value returned by the xtd::forms::month_calendar::roday_date property is the one the user sets.

◆ today_date() [2/2]

auto xtd::forms::month_calendar::today_date ( const xtd::date_time & value) -> month_calendar &

Sets the value that is used by xtd::forms::month_calendar as today's date.

Parameters
valueA xtd::date_time representing today's date. The default value is the current system date.
Returns
Current month_calendar.
Remarks
By default, the xtd::forms::month_calendar::today_date property returns the current system date, and the xtd::forms::month_calendar::today_date_set property is false. Setting the TodayDate property sets the xtd::forms::month_calendar::today_date_set property to true and, from that point, the value returned by the xtd::forms::month_calendar::roday_date property is the one the user sets.

◆ today_date_set()

auto xtd::forms::month_calendar::today_date_set ( ) const -> bool
nodiscardnoexcept

Gets a value indicating whether the xtd::forms::month_calendar::today_date property has been explicitly set.

Returns
true if the value for the xtd::forms::month_calendar::today_date property has been explicitly set; otherwise, false. The default is false.

◆ trailing_fore_color() [1/2]

auto xtd::forms::month_calendar::trailing_fore_color ( ) const -> xtd::drawing::color
nodiscardnoexcept

Gets a value indicating the color of days in months that are not fully displayed in the control.

Returns
A xtd::drawing::color. The default is the system color for gray text.
Remarks
When the calendar is displayed, some dates precede and some follow the months that are fully displayed. Using the xtd::forms::month_calendar::trailing_fore_color property, you can modify the color of the text for those dates.

◆ trailing_fore_color() [2/2]

auto xtd::forms::month_calendar::trailing_fore_color ( const xtd::drawing::color & value) -> month_calendar &

Sets a value indicating the color of days in months that are not fully displayed in the control.

Parameters
valueA xtd::drawing::color. The default is the system color for gray text.
Returns
Current month_calendar.
Remarks
When the calendar is displayed, some dates precede and some follow the months that are fully displayed. Using the xtd::forms::month_calendar::trailing_fore_color property, you can modify the color of the text for those dates.

◆ add_annually_bolded_date()

auto xtd::forms::month_calendar::add_annually_bolded_date ( const xtd::date_time & date) -> void

Adds a day that is displayed in bold on an annual basis in the month calendar.

Parameters
dateThe date to be displayed in bold.
Remarks
You must call the xtd::forms::month_calendar::update_bolded_dates method afterward to update the display.
To add multiple dates in a single assignment, you can assign an array of xtd::date_time objects to the xtd::forms::month_calendar::annually_bolded_dates property.

◆ add_bolded_date()

auto xtd::forms::month_calendar::add_bolded_date ( const xtd::date_time & date) -> void

Adds a day to be displayed in bold in the month calendar.

Parameters
dateThe date to be displayed in bold.
Remarks
You must call the xtd::forms::month_calendar::update_bolded_dates method afterward to update the display.
To add multiple dates in a single assignment, you can assign an array of xtd::date_time objects to the xtd::forms::month_calendar::bolded_dates property.

◆ add_monthly_bolded_date()

auto xtd::forms::month_calendar::add_monthly_bolded_date ( const xtd::date_time & date) -> void

Adds a day that is displayed in bold on a monthly basis in the month calendar.

Parameters
dateThe date to be displayed in bold.
Remarks
You must call the xtd::forms::month_calendar::update_bolded_dates method afterward to update the display.
To add multiple dates in a single assignment, you can assign an array of xtd::date_time objects to the xtd::forms::month_calendar::monthly_bolded_dates property.

◆ hit_test() [1/2]

auto xtd::forms::month_calendar::hit_test ( xtd::int32 x,
xtd::int32 y ) const -> hit_test_info
nodiscard

Returns a xtd::forms::month_calendar::hit_test_info with information on which portion of a month calendar control is at a specified x- and y-coordinate.

Parameters
xThe xtd::drawing::point::x coordinate of the point to be hit tested.
yThe xtd::drawing::point::y coordinate of the point to be hit tested.
Returns
A xtd::forms::month_calendar::hit_test_info that contains information about the specified point on the xtd::forms::month_calendar.

◆ hit_test() [2/2]

auto xtd::forms::month_calendar::hit_test ( const xtd::drawing::point & point) const -> hit_test_info
nodiscard

Returns an object with information on which portion of a month calendar control is at a location specified by a xtd::drawing::point.

Parameters
pointA xtd::drawing::point containing the xtd::drawing::point::x and xtd::drawing::point::y coordinates of the point to be hit tested.
Returns
A xtd::forms::month_calendar::hit_test_info that contains information about the specified point on the xtd::forms::month_calendar.

◆ remove_all_annually_bolded_dates()

auto xtd::forms::month_calendar::remove_all_annually_bolded_dates ( ) -> void

Removes all the annually bold dates.

Remarks
This method clears all dates from the xtd::forms::month_calendar::annually_bolded_dates array. To remove a single date from the bold dates, use the xtd::forms::month_calendar::remove_annually_bolded_date method.
You must call the xtd::forms::month_calendar::update_bolded_dates method to ensure that the display is updated to reflect the removal.

◆ remove_all_bolded_dates()

auto xtd::forms::month_calendar::remove_all_bolded_dates ( ) -> void

Removes all the nonrecurring bold dates.

Remarks
This method clears all dates from the xtd::forms::month_calendar::bolded_dates array. To remove a single date from the bold dates, use the xtd::forms::month_calendar::remove_bolded_date method.
You must call the xtd::forms::month_calendar::update_bolded_dates method to ensure that the display is updated to reflect the removal.

◆ remove_all_monthly_bolded_dates()

auto xtd::forms::month_calendar::remove_all_monthly_bolded_dates ( ) -> void

Removes all the monthly bold dates.

Remarks
This method clears all dates from the xtd::forms::month_calendar::monthly_bolded_dates array. To remove a single date from the bold dates, use the xtd::forms::month_calendar::remove_monthly_bolded_date method.
You must call the xtd::forms::month_calendar::update_bolded_dates method to ensure that the display is updated to reflect the removal.

◆ remove_annually_bolded_dates()

auto xtd::forms::month_calendar::remove_annually_bolded_dates ( const xtd::date_time & date) -> void

Removes the specified date from the list of annually bold dates.

Parameters
dateThe date to remove from the date list.
Remarks
If the specified date occurs more than once in the date list, only the first date is removed. When comparing dates, only the day and month are used. You must call the xtd::forms::month_calendar::bolded_dates properties method to ensure that the display is updated to reflect the removal.

◆ remove_bolded_dates()

auto xtd::forms::month_calendar::remove_bolded_dates ( const xtd::date_time & date) -> void

Removes the specified date from the list of the nonrecurring bold dates.

Parameters
dateThe date to remove from the date list.
Remarks
If the specified date occurs more than once in the date list, only the first date is removed. When comparing dates, only the day and month are used. You must call the xtd::forms::month_calendar::bolded_dates properties method to ensure that the display is updated to reflect the removal.

◆ remove_monthly_bolded_dates()

auto xtd::forms::month_calendar::remove_monthly_bolded_dates ( const xtd::date_time & date) -> void

Removes the specified date from the list of monthly bold dates.

Parameters
dateThe date to remove from the date list.
Remarks
If the specified date occurs more than once in the date list, only the first date is removed. When comparing dates, only the day and month are used. You must call the xtd::forms::month_calendar::bolded_dates properties method to ensure that the display is updated to reflect the removal.

◆ set_calendar_dimensions()

auto xtd::forms::month_calendar::set_calendar_dimensions ( xtd::int32 x,
xtd::int32 y ) -> void

Sets the number of columns and rows of months to display.

Parameters
xThe number of columns.
yThe number of rows.
Exceptions
xtd::argumentsx or y is less than 1.

◆ set_date()

auto xtd::forms::month_calendar::set_date ( const xtd::date_time & date) -> void

Sets a date as the currently selected date.

Parameters
dateThe date to be selected.
Remarks
This method sets the xtd::forms::month_calendar::selection_start and the xtd::forms::month_calendar::selection_end properties to the specified date. This method is the functional equivalent of setting the selection range to a single day through the xtd::forms::month_calendar::set_selection_range method or the xtd::forms::month_calendar::selection_range property.

◆ set_selection_range()

auto xtd::forms::month_calendar::set_selection_range ( const xtd::date_time & date1,
const xtd::date_time & date2 ) -> void

Sets the selected dates in a month calendar control to the specified date range.

Parameters
date1The beginning date of the selection range.
date2The end date of the selection range.
Remarks
Using this method is functionally equivalent to setting the xtd::forms::month_calendar::selection_range property. You can set the start and end dates separately by setting either the xtd::forms::month_calendar::selection_start or xtd::forms::month_calendar::selection_end property.
If you set the date1 parameter greater than the date2 parameter, both dates are set to the date1 value.

◆ to_string()

auto xtd::forms::month_calendar::to_string ( ) const -> xtd::string
nodiscardoverridevirtualnoexcept

Returns a string containing the name of the control, if any.

Returns
A string containing the name of the control, if any, or class name if the control is unnamed.

Reimplemented from xtd::forms::control.

◆ update_bolded_dates()

auto xtd::forms::month_calendar::update_bolded_dates ( ) -> void

Repaints the bold dates to reflect the dates set in the lists of bold dates.

Remarks
Use the xtd::forms::month_calendar::update_bolded_dates method to reflect changes made to xtd::forms::month_calendar::annually_bolded_dates, xtd::forms::month_calendar::monthly_bolded_dates, or xtd::forms::month_calendar::bolded_dates properties, either directly by modifying elements of the array or by using the add or remove methods provided to modify the date lists.

◆ create() [1/32]

auto xtd::forms::month_calendar::create ( ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar.

Returns
New xtd::forms::month_calendar created.

◆ create() [2/32]

auto xtd::forms::month_calendar::create ( const xtd::drawing::point & location) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified location.

Parameters
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [3/32]

auto xtd::forms::month_calendar::create ( const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified location, and size.

Parameters
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [4/32]

auto xtd::forms::month_calendar::create ( const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified location, size, and name.

Parameters
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [5/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
Returns
New xtd::forms::month_calendar created.

◆ create() [6/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, and location.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [7/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, location, and size.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [8/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, location, size, and name.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [9/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & max_date ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, and minimum date.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
Returns
New xtd::forms::month_calendar created.

◆ create() [10/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & max_date,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, maximum date, and location.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [11/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, maximum date, location, and size.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [12/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, maximum date, location, size, and name.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [13/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, minimum date, and maximum date.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
Returns
New xtd::forms::month_calendar created.

◆ create() [14/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, minimum date, maximum date, and location.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [15/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, minimum date, maximum date, location, and size.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [16/32]

auto xtd::forms::month_calendar::create ( const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified value, minimum date, maximum date, location, size, and name.

Parameters
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [17/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [18/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, and location.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [19/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, location, and size.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [20/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, location, size, and name.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [21/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, and value.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
Returns
New xtd::forms::month_calendar created.

◆ create() [22/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, and location.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [23/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, location, and size.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [24/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, location, size, and name.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [25/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & max_date ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, and maximum date.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
Returns
New xtd::forms::month_calendar created.

◆ create() [26/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & max_date,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, maximum date, and location.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [27/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, maximum date, location, and size.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [28/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, maximum date, location, size, and name.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [29/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, and maximum date.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
Returns
New xtd::forms::month_calendar created.

◆ create() [30/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date,
const xtd::drawing::point & location ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, maximum date, and location.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [31/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, maximum date, location, and size.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create() [32/32]

auto xtd::forms::month_calendar::create ( const xtd::forms::control & parent,
const forms::selection_range & selection_range,
const xtd::date_time & min_date,
const xtd::date_time & max_date,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> month_calendar
staticnodiscard

A factory to create an xtd::forms::month_calendar with specified parent, value, minimum date, maximum date, location, size, and name.

Parameters
parentThe parent that contains the new created xtd::forms::month_calendar.
selection_rangeA xtd::forms::selection_range with the start and end dates of the selected range.
min_dateThe minimum date and time that can be selected in the control.
max_dateThe maximum date and time that can be selected in the control.
locationA xtd::drawing::point that represent location of the xtd::forms::month_calendar.
sizeA xtd::drawing::size that represent size of the xtd::forms::month_calendar.
nameThe name of the xtd::forms::month_calendar.
Returns
New xtd::forms::month_calendar created.

◆ create_params()

auto xtd::forms::month_calendar::create_params ( ) const -> xtd::forms::create_params
overrideprotectedvirtualnoexcept

Gets the required creation parameters when the control handle is created.

Returns
A create_params that contains the required creation parameters when the handle to the control is created.
Remarks
The create_params property should not be overridden and used to adjust the properties of your derived control. Properties such as the create_params::caption, create_params::width, and create_params::height should be set by the corresponding properties in your control such as control::text, control::width and control::height. The create_params should only be extended when you are wrapping a standard Windows control class or to set styles not provided by the forms namespace.
Notes for inheritors
When overriding the create_params property in a derived class, use the base class's create_params property to extend the base implementation. Otherwise, you must provide all the implementation.

Reimplemented from xtd::forms::control.

◆ default_back_color()

auto xtd::forms::month_calendar::default_back_color ( ) const -> xtd::drawing::color
overrideprotectedvirtualnoexcept

Gets the default background color of the control.

Returns
The default background color of the control. The default is control.
Remarks
This is the default back_color property value of a generic top-level control. Derived classes can have different defaults.

Reimplemented from xtd::forms::control.

◆ default_fore_color()

auto xtd::forms::month_calendar::default_fore_color ( ) const -> xtd::drawing::color
overrideprotectedvirtualnoexcept

Gets the default foreground color of the control.

Returns
The default foreground color of the control. The default is control_text.

Reimplemented from xtd::forms::control.

◆ on_date_changed()

virtual auto xtd::forms::month_calendar::on_date_changed ( const xtd::forms::date_range_event_args & e) -> void
protectedvirtual

Raises the xtd::forms::month_calendar::date_changed event.

Parameters
eA xtd::forms::date_range_event_args that contains the event data.
Remarks
Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.
The xtd::forms::month_calendar::on_date_changed method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.
Notes to Inherotors
When overriding xtd::forms::month_calendar::on_date_changed in a derived class, be sure to call the base class' xtd::forms::month_calendar::on_date_changed method so that registered delegates receive the event.

◆ on_date_selected()

virtual auto xtd::forms::month_calendar::on_date_selected ( const xtd::forms::date_range_event_args & e) -> void
protectedvirtual

Raises the xtd::forms::month_calendar::date_selected event.

Parameters
eA xtd::forms::date_range_event_args that contains the event data.
Remarks
Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.
The xtd::forms::month_calendar::on_date_selected method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.
Notes to Inherotors
When overriding xtd::forms::month_calendar::on_date_selected in a derived class, be sure to call the base class' xtd::forms::month_calendar::on_date_selected method so that registered delegates receive the event.

◆ on_handle_created()

auto xtd::forms::month_calendar::on_handle_created ( const xtd::event_args & e) -> void
overrideprotectedvirtual

Raises the xtd::forms::control::handle_created event.

Parameters
eAn xtd::event_args that contains the event data.

Reimplemented from xtd::forms::control.

◆ wnd_proc()

auto xtd::forms::month_calendar::wnd_proc ( xtd::forms::message & m) -> void
overrideprotectedvirtual

Processes Windows messages.

Parameters
mThe Windows Message to process.
Remarks
All messages are sent to the wnd_proc method after getting filtered through the pre_process_message method.
Notes to Inheritors
Inheriting controls should call the base class's wnd_proc(message&) method to process any messages that they do not handle.

Reimplemented from xtd::forms::control.

Member Data Documentation

◆ date_changed

xtd::event<month_calendar, xtd::forms::date_range_event_handler> xtd::forms::month_calendar::date_changed

Occurs when the date selected in the xtd::forms::month_calendar changes.

Remarks
The xtd::forms::month_calendar::date_changed event occurs during any date selection, whether by mouse, keyboard, or code. The xtd::forms::month_calendar::date_selected event is similar, but it occurs only at the end of a date selection made using the mouse.
For more information about handling events, see Handling and Raising Events.

◆ date_selected

xtd::event<month_calendar, xtd::forms::date_range_event_handler> xtd::forms::month_calendar::date_selected

Occurs when the user makes an explicit date selection using the mouse.

Remarks
This event is similar to the xtd::forms::month_calendar::date_changed event, but it occurs at the end of a date selection made using the mouse. The xtd::forms::month_calendar::date_changed event occurs during any date selection, whether by mouse, keyboard, or code.
For more information about handling events, see Handling and Raising Events.

The documentation for this class was generated from the following file: