xtd 1.0.0
Loading...
Searching...
No Matches
xtd::forms::form Class Reference
Inheritance diagram for xtd::forms::form:
xtd::forms::container_control xtd::forms::scrollable_control 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 xtd::forms::trace_form_base xtd::forms::debug_form xtd::forms::trace_form

Definition

Represents a window or dialog box that makes up an application's user interface.

Header
#include <xtd/forms/form>
Namespace
xtd::forms
Library
xtd.forms
Remarks
A form is a representation of any window displayed in your application. The Form class can be used to create standard, tool, borderless, and floating windows. You can also use the form class to create modal windows such as a dialog box. A special kind of form, the multiple-document interface (MDI) form, can contain other forms called MDI child forms. An MDI form is created by setting the is_mdi_container property to true. MDI child forms are created by setting the mdi_parent property to the MDI parent form that will contain the child form.
Using the properties available in the form class, you can determine the appearance, size, color, and window management features of the window or dialog box you are creating. The text property allows you to specify the caption of the window in the title bar. The size and desktop_location properties allow you to define the size and position of the window when it is displayed. You can use the fore_color color property to change the default foreground color of all controls placed on the form. The form_border_style, minimize_box, and maximize_box properties allow you to control whether the form can be minimized, maximized, or resized at run time.
In addition to properties, you can use the methods of the class to manipulate a form. For example, you can use the show_dialog method to show a form as a modal dialog box. You can use the set_desktop_location method to position the form on the desktop.
Appearance
Windows macOS Gnome
Light
Dark
Examples
The following code example demonstrates the use of form control.
#include <xtd/forms/application>
#include <xtd/xtd>
class form1 : public form {
public:
form1() {
text("form1");
location({300, 200});
size({640, 480});
button_close.parent(*this);
button_close.text("Close");
button_close.auto_size(true);
button_close.location({10, 10});
button_close.click += event_handler {*this, &form::close};
button_exit.parent(*this);
button_exit.text("Exit");
button_exit.auto_size(true);
button_exit.location({100, 10});
button_exit.click += overload<>(&application::exit);
button_exit_thread.parent(*this);
button_exit_thread.text("Exit thread");
button_exit_thread.auto_size(true);
button_exit_thread.location({190, 10});
button_exit_thread.click += &application::exit_thread;
}
protected:
void on_form_closing(form_closing_event_args& e) override {
e.cancel(message_box::show(*this, "Are you sure you want exit?", "Close Form", message_box_buttons::yes_no, message_box_icon::question) == dialog_result::no);
}
private:
forms::button button_close;
forms::button button_exit;
forms::button button_exit_thread;
};
auto main() -> int {
application::run(form1 {});
}
virtual auto size() const noexcept -> xtd::drawing::size
Gets the height and width of the control.
virtual auto text() const noexcept -> const xtd::string &
Gets the text associated with this control.
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...
form()
Initializes a new instance of the Form class.
virtual auto on_form_closing(xtd::forms::form_closing_event_args &e) -> void
Raises the form::form_closing event.
@ e
The E key.
Definition console_key.hpp:96
Examples
about_dialog_from_executing_assembly_informations.cpp, tutorial_application_icon.cpp, tutorial_button.cpp, tutorial_communicate.cpp, and tutorial_simple_application.cpp.

Public Aliases

using ibutton_control_ref
 Represent an xtd::forms::ibutton_control reference.
using main_menu_ref
 Represent an xtd::forms::main_menu reference.
using status_bar_ref
 Represent an xtd::forms::status_bar reference.
using tool_bar_ref
 Represent an xtd::forms::tool_bar reference.

Public Events

xtd::event< form, xtd::event_handleractivated
 Occurs when the form is activated in code or by the user.
xtd::event< form, xtd::event_handlerdeactivate
 Occurs when the form loses focus and is no longer the active form.
xtd::event< form, xtd::forms::form_closed_event_handlerform_closed
 Occurs after the form is closed.
xtd::event< form, xtd::forms::form_closing_event_handlerform_closing
 Occurs before the form is closed.

Public Constructors

 form ()
 Initializes a new instance of the Form class.

Public Properties

auto accept_button () const noexcept -> std::optional< ibutton_control_ref >
 Gets the button on the form that is clicked when the user presses the ENTER key.
auto accept_button (const xtd::forms::ibutton_control &value) -> form &
 Sets the button on the form that is clicked when the user presses the ENTER key.
auto accept_button (xtd::null_ptr) -> form &
 Sets the button on the form that is clicked when the user presses the ENTER key.
virtual auto auto_size_mode () const noexcept -> xtd::forms::auto_size_mode
 Gets the mode by which the form automatically resizes itself.
virtual auto auto_size_mode (xtd::forms::auto_size_mode value) -> form &
 Sets the mode by which the form automatically resizes itself.
auto cancel_button () const noexcept -> std::optional< ibutton_control_ref >
 Gets the button control that is clicked when the user presses the ESC key.
auto cancel_button (const xtd::forms::ibutton_control &value) -> form &
 Gets the button control that is clicked when the user presses the ESC key.
auto cancel_button (xtd::null_ptr) -> form &
 Gets the button control that is clicked when the user presses the ESC key.
virtual auto close_box () const noexcept -> bool
 Gets a value indicating whether a close box is displayed in the caption bar of the form.
virtual auto close_box (bool value) -> form &
 Sets a value indicating whether a close box is displayed in the caption bar of the form.
virtual auto control_box () const noexcept -> bool
 Gets a value indicating whether a control box is displayed in the caption bar of the form.
virtual auto control_box (bool value) -> form &
 Sets a value indicating whether a control box is displayed in the caption bar of the form.
virtual auto dialog_result () const noexcept -> xtd::forms::dialog_result
 Gets the dialog result for the form.
virtual auto dialog_result (xtd::forms::dialog_result value) -> form &
 Sets the dialog result for the form.
auto font (xtd::null_ptr) -> control &override
 Resets the font of the text displayed by the control.
virtual auto form_border_style () const noexcept -> xtd::forms::form_border_style
 Gets the border style of the form.
virtual auto form_border_style (xtd::forms::form_border_style value) -> form &
 Gets the border style of the form.
virtual auto help_button () const -> bool
 Gets a value indicating whether a Help button should be displayed in the caption box of the form.
virtual auto help_button (bool value) -> form &
 Sets a value indicating whether a Help button should be displayed in the caption box of the form.
virtual auto icon () const noexcept -> const xtd::drawing::icon &
 Gets the icon for the form.
virtual auto icon (const xtd::drawing::icon &value) -> form &
 Sets the icon for the form.
virtual auto maximize_box () const noexcept -> bool
 Gets a value indicating whether the Maximize button is displayed in the caption bar of the form.
virtual auto maximize_box (bool value) -> form &
 Sets a value indicating whether the Maximize button is displayed in the caption bar of the form.
virtual auto menu () const noexcept -> std::optional< main_menu_ref >
 Gets the main_menu that is displayed in the form.
virtual auto menu (const xtd::forms::main_menu &value) -> form &
 Sets the main_menu that is displayed in the form.
virtual auto menu (xtd::null_ptr) -> form &
 Sets the main_menu that is displayed in the form.
virtual auto minimize_box () const noexcept -> bool
 Gets a value indicating whether the Minimize button is displayed in the caption bar of the form.
virtual auto minimize_box (bool value) -> form &
 Sets a value indicating whether the Minimize button is displayed in the caption bar of the form.
auto modal () const noexcept -> bool
 Gets a value indicating whether this form is displayed modally.
virtual auto opacity () const noexcept -> double
 Gets form opacity.
virtual auto opacity (double opacity) -> form &
 Sets form opacity.
virtual auto owner () const noexcept -> std::optional< xtd::forms::control_ref >
 Gets the form that owns this form.
virtual auto owner (const xtd::forms::control &value) -> form &
 Sets the form that owns this form.
virtual auto owner (xtd::null_ptr) -> form &
 Resets the form that owns this form.
auto parent (const xtd::forms::control &value) -> xtd::forms::control &override
 Sets the parent container of the control.
virtual auto show_icon () const noexcept -> bool
 Gets a value indicating whether an icon is displayed in the caption bar of the form.
virtual auto show_icon (bool value) -> form &
 Sets a value indicating whether an icon is displayed in the caption bar of the form.
virtual auto show_in_taskbar () const noexcept -> bool
 Gets a value indicating whether the form is displayed in the Windows taskbar.
virtual auto show_in_taskbar (bool value) -> form &
 Sets a value indicating whether the form is displayed in the Windows taskbar.
virtual auto start_position () const noexcept -> xtd::forms::form_start_position
 Gets the starting position of the form at run time.
virtual auto start_position (xtd::forms::form_start_position value) -> form &
 Sets the starting position of the form at run time.
virtual auto status_bar () const noexcept -> std::optional< status_bar_ref >
 Gets the status_bar that is displayed in the form.
virtual auto status_bar (const xtd::forms::status_bar &value) -> form &
 Sets the status_bar that is displayed in the form.
virtual auto status_bar (xtd::null_ptr) -> form &
 Resets the status_bar that is displayed in the form.
virtual auto tool_bar () const noexcept -> std::optional< tool_bar_ref >
 Gets the tool_bar that is displayed in the form.
virtual auto tool_bar (const xtd::forms::tool_bar &value) -> form &
 Sets the tool_bar that is displayed in the form.
virtual auto tool_bar (xtd::null_ptr) -> form &
 Resets the tool_bar that is displayed in the form.
virtual auto top_level () const noexcept -> bool
 Gets a value indicating whether to display the form as a top-level window.
virtual auto top_level (bool top_level) -> form &
 Sets a value indicating whether to display the form as a top-level window.
virtual auto top_most () const noexcept -> bool
 Gets a value indicating whether the form should be displayed as a topmost form.
virtual auto top_most (bool value) -> form &
 Sets a value indicating whether the form should be displayed as a topmost form.
auto visible (bool visible) -> xtd::forms::control &override
 Sets a value indicating whether the control and all its child controls are displayed.
virtual auto window_state () const noexcept -> xtd::forms::form_window_state
 Gets a value that indicates whether form is minimized, maximized, or normal.
virtual auto window_state (xtd::forms::form_window_state value) -> form &
 Sets a value that indicates whether form is minimized, maximized, or normal.

Public Methods

auto activate () -> void
 Activates the form and gives it focus.
auto bring_to_front () -> void override
 Brings the control to the front of the z-order.
auto center_to_screen () -> void
 Centers the position of the form within the bounds of the parent form.
auto close () -> void
 Closes the form.
auto pre_process_message (const xtd::forms::message &message) -> bool override
 Preprocesses keyboard or input messages within the message loop before they are dispatched.
virtual auto show_dialog () -> xtd::forms::dialog_result
 Shows the form as a modal dialog box.
virtual auto show_dialog (const xtd::forms::iwin32_window &owner) -> xtd::forms::dialog_result
 Shows the form as a modal dialog box with the specified owner. @parm owner Any object that implements iwin32_window that represents the top-level window that will own the modal dialog box.
virtual auto show_sheet (const xtd::forms::iwin32_window &owner) -> void
 Shows the form as a sheet dialog box.
virtual auto show_sheet_dialog (const xtd::forms::iwin32_window &owner) -> xtd::forms::dialog_result
 Shows the form as a modal sheet dialog box.

Public Static Properties

static auto active_form () noexcept -> std::optional< xtd::forms::form_ref >
 Gets the currently active form for this application.

Public Static Methods

static auto create () -> form
 A factory to create an xtd::forms::form.
static auto create (const xtd::string &text) -> form
 A factory to create an xtd::forms::form with specified text.
static auto create (const xtd::string &text, const xtd::drawing::point &location) -> form
 A factory to create an xtd::forms::form with specified text, and location.
static auto create (const xtd::string &text, const xtd::drawing::point &location, const xtd::drawing::size &size) -> form
 A factory to create an xtd::forms::form with specified text, location, and size.
static auto create (const xtd::string &text, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> form
 A factory to create an xtd::forms::form with specified text, location, size, and name.
static auto create (const xtd::string &text, const xtd::drawing::size &size) -> form
 A factory to create an xtd::forms::form with specified text, and size.
static auto create (const xtd::string &text, const xtd::drawing::size &size, const xtd::string &name) -> form
 A factory to create an xtd::forms::form with specified text, size, and name.
static auto create (const xtd::string &text, xtd::forms::form_start_position start_position) -> form
 A factory to create an xtd::forms::form with specified text, and form start position.
static auto create (const xtd::string &text, xtd::forms::form_start_position start_position, const xtd::drawing::point &location) -> form
 A factory to create an xtd::forms::form with specified text, form start position, and location.
static auto create (const xtd::string &text, xtd::forms::form_start_position start_position, const xtd::drawing::point &location, const xtd::drawing::size &size) -> form
 A factory to create an xtd::forms::form with specified text, form start position, location, and size.
static auto create (const xtd::string &text, xtd::forms::form_start_position start_position, const xtd::drawing::point &location, const xtd::drawing::size &size, const xtd::string &name) -> form
 A factory to create an xtd::forms::form with specified text, form start position, location, size, and name.
static auto create (const xtd::string &text, xtd::forms::form_start_position start_position, const xtd::drawing::size &size) -> form
 A factory to create an xtd::forms::form with specified text, form start position, and size.
static auto create (const xtd::string &text, xtd::forms::form_start_position start_position, const xtd::drawing::size &size, const xtd::string &name) -> form
 A factory to create an xtd::forms::form with specified text, form start position, 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_size () const noexcept -> xtd::drawing::size override
 Gets the default size of the control.

Protected Methods

virtual auto on_activated (const xtd::event_args &e) -> void
 Raises the form::activated event.
virtual auto on_deactivate (const xtd::event_args &e) -> void
 Raises the form::deactivate event.
auto on_handle_created (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::handle_created event.
auto on_handle_destroyed (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::handle_destroyed event.
virtual auto on_form_closed (const xtd::forms::form_closed_event_args &e) -> void
 Raises the form::form_closed event.
virtual auto on_form_closing (xtd::forms::form_closing_event_args &e) -> void
 Raises the form::form_closing event.
auto on_layout (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::layout event.
auto on_location_changed (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::location_changed event.
auto on_paint (xtd::forms::paint_event_args &e) -> void override
 Raises the xtd::forms::control::paint event.
auto on_region_changed (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::region_changed event.
auto on_resize (const xtd::event_args &e) -> void override
 Raises the xtd::forms::control::region 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.
auto active_control () const noexcept -> std::optional< xtd::forms::control_ref >
 Gets the active control on the container control.
auto active_control (const xtd::forms::control &value) -> void
 Sets the active control on the container control.
auto active_control (xtd::null_ptr) -> container_control &
 Resets the active control on the container control.
virtual bool auto_scroll () const noexcept
 Gets a value indicating whether the container enables the user to scroll to any controls placed outside of its visible boundaries.
virtual scrollable_controlauto_scroll (bool auto_scroll)
 Sets a value indicating whether the container enables the user to scroll to any controls placed outside of its visible boundaries.
drawing::size auto_scroll_margin () const noexcept
 Gets the size of the auto-scroll margin.
scrollable_controlauto_scroll_margin (const drawing::size &value)
 Sets the size of the auto-scroll margin.
drawing::rectangle display_rectangle () const noexcept override
 Gets the rectangle that represents the virtual display area of the control.
virtual bool h_scroll () const noexcept
 Gets a value indicating whether the horizontal scroll bar is visible.
virtual scrollable_controlh_scroll (bool h_scroll)
 Sets a value indicating whether the horizontal scroll bar is visible.
virtual bool v_scroll () const noexcept
 Gets a value indicating whether the vertical scroll bar is visible.
virtual scrollable_controlv_scroll (bool v_scroll)
 Sets a value indicating whether the vertical scroll bar is visible.
 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 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 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 (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 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.
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 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.
auto to_string () const noexcept -> xtd::string override
 Returns a string containing the name of the control, if any.
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.
 container_control ()
 Initializes a new instance of the container_control class.
auto measure_control () const noexcept -> xtd::drawing::size override
 Measure this control.
 scrollable_control ()
 Initialize a new instance of scrollable_control class.
forms::create_params create_params () const noexcept override
 Gets the required creation parameters when the control handle is created.
void on_layout (const event_args &e) override
 Raises the xtd::forms::control::layout event.
auto control_state () const noexcept -> xtd::forms::visual_styles::control_state
 Gets state.
virtual auto default_back_color () const noexcept -> xtd::drawing::color
 Gets the default background color of the control.
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_fore_color () const noexcept -> xtd::drawing::color
 Gets the default foreground color 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.
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_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_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_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_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 Typedef Documentation

◆ ibutton_control_ref

◆ main_menu_ref

◆ status_bar_ref

◆ tool_bar_ref

Constructor & Destructor Documentation

◆ form()

xtd::forms::form::form ( )

Initializes a new instance of the Form class.

Remarks
The default size of a form is 300 pixels in height and 300 pixels in width.

Member Function Documentation

◆ accept_button() [1/3]

auto xtd::forms::form::accept_button ( ) const -> std::optional< ibutton_control_ref >
nodiscardnoexcept

Gets the button on the form that is clicked when the user presses the ENTER key.

Returns
An ibutton_control that represents the button to use as the accept button for the form.

◆ accept_button() [2/3]

auto xtd::forms::form::accept_button ( const xtd::forms::ibutton_control & value) -> form &

Sets the button on the form that is clicked when the user presses the ENTER key.

Parameters
valueAn ibutton_control that represents the button to use as the accept button for the form.
Returns
Current form.

◆ accept_button() [3/3]

auto xtd::forms::form::accept_button ( xtd::null_ptr ) -> form &

Sets the button on the form that is clicked when the user presses the ENTER key.

Parameters
valueAn ibutton_control that represents the button to use as the accept button for the form.
Returns
Current form.

◆ auto_size_mode() [1/2]

virtual auto xtd::forms::form::auto_size_mode ( ) const -> xtd::forms::auto_size_mode
nodiscardvirtualnoexcept

Gets the mode by which the form automatically resizes itself.

Returns
An auto_size_mode enumerated value. The default is grow_only.

◆ auto_size_mode() [2/2]

virtual auto xtd::forms::form::auto_size_mode ( xtd::forms::auto_size_mode value) -> form &
virtual

Sets the mode by which the form automatically resizes itself.

Parameters
valueAn auto_size_mode enumerated value. The default is grow_only.
Returns
Current form.

◆ cancel_button() [1/3]

auto xtd::forms::form::cancel_button ( ) const -> std::optional< ibutton_control_ref >
nodiscardnoexcept

Gets the button control that is clicked when the user presses the ESC key.

Returns
An ibutton_control that represents the cancel button for the form.

◆ cancel_button() [2/3]

auto xtd::forms::form::cancel_button ( const xtd::forms::ibutton_control & value) -> form &

Gets the button control that is clicked when the user presses the ESC key.

Parameters
valueAn ibutton_control that represents the cancel button for the form.
Returns
Current form.

◆ cancel_button() [3/3]

auto xtd::forms::form::cancel_button ( xtd::null_ptr ) -> form &

Gets the button control that is clicked when the user presses the ESC key.

Parameters
valueAn ibutton_control that represents the cancel button for the form.
Returns
Current form.

◆ close_box() [1/2]

virtual auto xtd::forms::form::close_box ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether a close box is displayed in the caption bar of the form.

Returns
true if the form displays a close box in the upper-left corner of the form; otherwise, false. The default is true.

◆ close_box() [2/2]

virtual auto xtd::forms::form::close_box ( bool value) -> form &
virtual

Sets a value indicating whether a close box is displayed in the caption bar of the form.

Parameters
valuetrue if the form displays a close box in the upper-left corner of the form; otherwise, false. The default is true.
Returns
Current form.

◆ control_box() [1/2]

virtual auto xtd::forms::form::control_box ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether a control box is displayed in the caption bar of the form.

Returns
true if the form displays a control box in the upper-right corner of the form; otherwise, false. The default is true.

◆ control_box() [2/2]

virtual auto xtd::forms::form::control_box ( bool value) -> form &
virtual

Sets a value indicating whether a control box is displayed in the caption bar of the form.

Parameters
valuetrue if the form displays a control box in the upper-right corner of the form; otherwise, false. The default is true.
Returns
Current form.

◆ dialog_result() [1/2]

virtual auto xtd::forms::form::dialog_result ( ) const -> xtd::forms::dialog_result
nodiscardvirtualnoexcept

Gets the dialog result for the form.

Returns
A dialog_result that represents the result of the form when used as a dialog box.

◆ dialog_result() [2/2]

virtual auto xtd::forms::form::dialog_result ( xtd::forms::dialog_result value) -> form &
virtual

Sets the dialog result for the form.

Parameters
valueA dialog_result that represents the result of the form when used as a dialog box.
Returns
Current form.

◆ font()

auto xtd::forms::form::font ( xtd::null_ptr ) -> control &override
overridevirtual

Resets the font of the text displayed by the control.

Parameters
xtd::null.
Returns
Current control.

Reimplemented from xtd::forms::control.

◆ form_border_style() [1/2]

virtual auto xtd::forms::form::form_border_style ( ) const -> xtd::forms::form_border_style
nodiscardvirtualnoexcept

Gets the border style of the form.

Returns
A form_border_style that represents the style of border to display for the form. The default is form_border_style::sizable.

◆ form_border_style() [2/2]

virtual auto xtd::forms::form::form_border_style ( xtd::forms::form_border_style value) -> form &
virtual

Gets the border style of the form.

Parameters
valueA form_border_style that represents the style of border to display for the form. The default is form_border_style::sizable.
Returns
Current form.

◆ help_button() [1/2]

virtual auto xtd::forms::form::help_button ( ) const -> bool
nodiscardvirtual

Gets a value indicating whether a Help button should be displayed in the caption box of the form.

Returns
true to display a Help button in the form's caption bar; otherwise, false. The default is false.

◆ help_button() [2/2]

virtual auto xtd::forms::form::help_button ( bool value) -> form &
virtual

Sets a value indicating whether a Help button should be displayed in the caption box of the form.

Parameters
valuetrue to display a Help button in the form's caption bar; otherwise, false. The default is false.
Returns
Current form.

◆ icon() [1/2]

virtual auto xtd::forms::form::icon ( ) const -> const xtd::drawing::icon &
nodiscardvirtualnoexcept

Gets the icon for the form.

Returns
An icon that represents the icon for the form.

◆ icon() [2/2]

virtual auto xtd::forms::form::icon ( const xtd::drawing::icon & value) -> form &
virtual

Sets the icon for the form.

Parameters
valueAn icon that represents the icon for the form.
Returns
Current form.

◆ maximize_box() [1/2]

virtual auto xtd::forms::form::maximize_box ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether the Maximize button is displayed in the caption bar of the form.

Returns
true to display a Maximize button for the form; otherwise, false. The default is true.

◆ maximize_box() [2/2]

virtual auto xtd::forms::form::maximize_box ( bool value) -> form &
virtual

Sets a value indicating whether the Maximize button is displayed in the caption bar of the form.

Parameters
valuetrue to display a Maximize button for the form; otherwise, false. The default is true.
Returns
Current form.

◆ menu() [1/3]

virtual auto xtd::forms::form::menu ( ) const -> std::optional< main_menu_ref >
nodiscardvirtualnoexcept

Gets the main_menu that is displayed in the form.

Returns
A main_menu that represents the menu to display in the form.

◆ menu() [2/3]

virtual auto xtd::forms::form::menu ( const xtd::forms::main_menu & value) -> form &
virtual

Sets the main_menu that is displayed in the form.

Parameters
valueA main_menu that represents the menu to display in the form.
Returns
Current form.

◆ menu() [3/3]

virtual auto xtd::forms::form::menu ( xtd::null_ptr ) -> form &
virtual

Sets the main_menu that is displayed in the form.

Parameters
valueA main_menu that represents the menu to display in the form.
Returns
Current form.

◆ minimize_box() [1/2]

virtual auto xtd::forms::form::minimize_box ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether the Minimize button is displayed in the caption bar of the form.

Returns
true to display a Minimize button for the form; otherwise, false. The default is true.

◆ minimize_box() [2/2]

virtual auto xtd::forms::form::minimize_box ( bool value) -> form &
virtual

Sets a value indicating whether the Minimize button is displayed in the caption bar of the form.

Parameters
valuetrue to display a Minimize button for the form; otherwise, false. The default is true.
Returns
Current form.

◆ modal()

auto xtd::forms::form::modal ( ) const -> bool
nodiscardnoexcept

Gets a value indicating whether this form is displayed modally.

Returns
true if the form is displayed modally; otherwise, false.

◆ opacity() [1/2]

virtual auto xtd::forms::form::opacity ( ) const -> double
nodiscardvirtualnoexcept

Gets form opacity.

Returns
A double-precision value between 0.0 and 1.0 that represent the form opacity.

◆ opacity() [2/2]

virtual auto xtd::forms::form::opacity ( double opacity) -> form &
virtual

Sets form opacity.

Parameters
opacityA double-precision value between 0.0 and 1.0 that represent the form opacity.

◆ owner() [1/3]

virtual auto xtd::forms::form::owner ( ) const -> std::optional< xtd::forms::control_ref >
nodiscardvirtualnoexcept

Gets the form that owns this form.

Returns
A form that represents the form that is the owner of this form.

◆ owner() [2/3]

virtual auto xtd::forms::form::owner ( const xtd::forms::control & value) -> form &
virtual

Sets the form that owns this form.

Parameters
valueA form that represents the form that is the owner of this form.
Returns
Current form.

◆ owner() [3/3]

virtual auto xtd::forms::form::owner ( xtd::null_ptr ) -> form &
virtual

Resets the form that owns this form.

Parameters
nullptr
Returns
Current form.

◆ parent()

auto xtd::forms::form::parent ( const xtd::forms::control & value) -> xtd::forms::control &override
overridevirtual

Sets the parent container of the control.

Parameters
parentA control that represents the parent or container control of the control or nullptr for none.

Reimplemented from xtd::forms::control.

◆ show_icon() [1/2]

virtual auto xtd::forms::form::show_icon ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether an icon is displayed in the caption bar of the form.

Returns
true if the form displays an icon in the caption bar; otherwise, false. The default is true.

◆ show_icon() [2/2]

virtual auto xtd::forms::form::show_icon ( bool value) -> form &
virtual

Sets a value indicating whether an icon is displayed in the caption bar of the form.

Parameters
valuetrue if the form displays an icon in the caption bar; otherwise, false. The default is true.
Returns
Current form.

◆ show_in_taskbar() [1/2]

virtual auto xtd::forms::form::show_in_taskbar ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether the form is displayed in the Windows taskbar.

Returns
true to display the form in the Windows taskbar at run time; otherwise, false. The default is true.
Remarks
If a form is parented within another form, the parented form is not displayed in the Windows taskbar.
You can use this property to prevent users from selecting your form through the Windows taskbar. For example, if you display a Find and Replace tool window in your application, you might want to prevent that window from being selected through the Windows taskbar because you would need both the application's main window and the Find and Replace tool window displayed in order to process searches appropriately.
You will often wish to use this property when creating a form with the xtd::forms::form_border_style::fixed_tool_window style. Setting the xtd::forms::form_border_style::fixed_tool_window style does not alone guarantee that a window will not appear in the taskbar.

◆ show_in_taskbar() [2/2]

virtual auto xtd::forms::form::show_in_taskbar ( bool value) -> form &
virtual

Sets a value indicating whether the form is displayed in the Windows taskbar.

Parameters
valuetrue to display the form in the Windows taskbar at run time; otherwise, false. The default is true.
Returns
Current form.
Remarks
If a form is parented within another form, the parented form is not displayed in the Windows taskbar.
You can use this property to prevent users from selecting your form through the Windows taskbar. For example, if you display a Find and Replace tool window in your application, you might want to prevent that window from being selected through the Windows taskbar because you would need both the application's main window and the Find and Replace tool window displayed in order to process searches appropriately.
You will often wish to use this property when creating a form with the xtd::forms::form_border_style::fixed_tool_window style. Setting the xtd::forms::form_border_style::fixed_tool_window style does not alone guarantee that a window will not appear in the taskbar.

◆ start_position() [1/2]

virtual auto xtd::forms::form::start_position ( ) const -> xtd::forms::form_start_position
nodiscardvirtualnoexcept

Gets the starting position of the form at run time.

Returns
A form_start_position that represents the starting position of the form.

◆ start_position() [2/2]

virtual auto xtd::forms::form::start_position ( xtd::forms::form_start_position value) -> form &
virtual

Sets the starting position of the form at run time.

Parameters
valueA form_start_position that represents the starting position of the form.
Returns
Current form.

◆ status_bar() [1/3]

virtual auto xtd::forms::form::status_bar ( ) const -> std::optional< status_bar_ref >
nodiscardvirtualnoexcept

Gets the status_bar that is displayed in the form.

Returns
A status_bar that represents the status bar to display in the form.

◆ status_bar() [2/3]

virtual auto xtd::forms::form::status_bar ( const xtd::forms::status_bar & value) -> form &
virtual

Sets the status_bar that is displayed in the form.

Parameters
valueA status_bar that represents the status bar to display in the form.
Returns
Current form.

◆ status_bar() [3/3]

virtual auto xtd::forms::form::status_bar ( xtd::null_ptr ) -> form &
virtual

Resets the status_bar that is displayed in the form.

Parameters
valueA status_bar that represents the status bar to display in the form.
Returns
Current form.

◆ tool_bar() [1/3]

virtual auto xtd::forms::form::tool_bar ( ) const -> std::optional< tool_bar_ref >
nodiscardvirtualnoexcept

Gets the tool_bar that is displayed in the form.

Returns
A tool_bar that represents the tool bar to display in the form.

◆ tool_bar() [2/3]

virtual auto xtd::forms::form::tool_bar ( const xtd::forms::tool_bar & value) -> form &
virtual

Sets the tool_bar that is displayed in the form.

Parameters
valueA tool_bar that represents the tool bar to display in the form.
Returns
Current form.

◆ tool_bar() [3/3]

virtual auto xtd::forms::form::tool_bar ( xtd::null_ptr ) -> form &
virtual

Resets the tool_bar that is displayed in the form.

Parameters
valueA tool_bar that represents the tool bar to display in the form.
Returns
Current form.

◆ top_level() [1/2]

virtual auto xtd::forms::form::top_level ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether to display the form as a top-level window.

Returns
true to display the form as a top-level window; otherwise, false. The default is true.
Remarks
A Multiple-document interface (MDI) parent form must be a top-level window. So set to false has no effect.
A top-level form is a window that has no parent form, or whose parent form is the desktop window. Top-level windows are typically used as the main form in an application.

◆ top_level() [2/2]

virtual auto xtd::forms::form::top_level ( bool top_level) -> form &
virtual

Sets a value indicating whether to display the form as a top-level window.

Returns
true to display the form as a top-level window; otherwise, false. The default is true.
Remarks
A Multiple-document interface (MDI) parent form must be a top-level window. So set to false has no effect.
A top-level form is a window that has no parent form, or whose parent form is the desktop window. Top-level windows are typically used as the main form in an application.

◆ top_most() [1/2]

virtual auto xtd::forms::form::top_most ( ) const -> bool
nodiscardvirtualnoexcept

Gets a value indicating whether the form should be displayed as a topmost form.

Returns
true to display the form as a topmost form; otherwise, false. The default is false.

◆ top_most() [2/2]

virtual auto xtd::forms::form::top_most ( bool value) -> form &
virtual

Sets a value indicating whether the form should be displayed as a topmost form.

Parameters
valuetrue to display the form as a topmost form; otherwise, false. The default is false.
Returns
Current form.

◆ visible()

auto xtd::forms::form::visible ( bool visible) -> xtd::forms::control &override
overridevirtual

Sets a value indicating whether the control and all its child controls are displayed.

Parameters
visibletrue if the control and all its child controls are displayed; otherwise, false. The default is true.
Returns
Current control.

Reimplemented from xtd::forms::control.

◆ window_state() [1/2]

virtual auto xtd::forms::form::window_state ( ) const -> xtd::forms::form_window_state
nodiscardvirtualnoexcept

Gets a value that indicates whether form is minimized, maximized, or normal.

Returns
A form_window_state that represents whether form is minimized, maximized, full_screen, or normal. The default is form_window_state::normal.

◆ window_state() [2/2]

virtual auto xtd::forms::form::window_state ( xtd::forms::form_window_state value) -> form &
virtual

Sets a value that indicates whether form is minimized, maximized, or normal.

Parameters
valueA form_window_state that represents whether form is minimized, maximized, full_screen, or normal. The default is form_window_state::normal.
Returns
Current form.

◆ active_form()

auto xtd::forms::form::active_form ( ) -> std::optional< xtd::forms::form_ref >
staticnodiscardnoexcept

Gets the currently active form for this application.

Returns
A form that represents the currently active form, or std::optional with no value if there is no active form.

◆ activate()

auto xtd::forms::form::activate ( ) -> void

Activates the form and gives it focus.

Remarks
Activating a form brings it to the front if this is the active application, or it flashes the window caption if this is not the active application. The form must be visible for this method to have any effect. To determine the active form in an application, use the active_form property or the active_mdi_child property if your forms are in a Multiple-document interface (MDI) application.

◆ bring_to_front()

auto xtd::forms::form::bring_to_front ( ) -> void
overridevirtual

Brings the control to the front of the z-order.

Remarks
The control is moved to the front of the z-order. If the control is a child of another control, the child control is moved to the front of the z-order. bring_to_front does not make a control a top-level control, and it does not raise the xtd::forms::control::paint event.

Reimplemented from xtd::forms::control.

◆ center_to_screen()

auto xtd::forms::form::center_to_screen ( ) -> void

Centers the position of the form within the bounds of the parent form.

Remarks
Do not call the center_to_screen method directly from your code. Instead, set the start_position property to center_parent.
If the form or dialog is top-level, then center_to_parent centers the form with respect to the screen or desktop.

◆ close()

auto xtd::forms::form::close ( ) -> void

Closes the form.

Remarks
When a form is closed, all resources created within the object are closed and the form is disposed. You can prevent the closing of a form at run time by handling the closing event and setting the cancel property of the cancel_event_args passed as a parameter to your event handler. If the form you are closing is the startup form of your application, your application ends.
Examples
form2.cpp.

◆ pre_process_message()

auto xtd::forms::form::pre_process_message ( const xtd::forms::message & message) -> bool
overridevirtual

Preprocesses keyboard or input messages within the message loop before they are dispatched.

Parameters
messageA xtd::forms::message, passed by reference, that represents the message to process. The possible values are WM_KEYDOWN, WM_SYSKEYDOWN, WM_CHAR, and WM_SYSCHAR.
Returns
true if the message was processed by the control; otherwise, false.
Remarks
pre_process_message is called by the application's message loop to preprocess input messages before they are dispatched. Possible values for the msg parameter are WM_KEYDOWN, WM_SYSKEYDOWN, WM_CHAR, and WM_SYSCHAR.

Reimplemented from xtd::forms::control.

◆ show_dialog() [1/2]

virtual auto xtd::forms::form::show_dialog ( ) -> xtd::forms::dialog_result
virtual

Shows the form as a modal dialog box.

Returns
One of the dialog_result values.

◆ show_dialog() [2/2]

virtual auto xtd::forms::form::show_dialog ( const xtd::forms::iwin32_window & owner) -> xtd::forms::dialog_result
virtual

Shows the form as a modal dialog box with the specified owner. @parm owner Any object that implements iwin32_window that represents the top-level window that will own the modal dialog box.

Returns
One of the dialog_result values.

◆ show_sheet()

virtual auto xtd::forms::form::show_sheet ( const xtd::forms::iwin32_window & owner) -> void
virtual

Shows the form as a sheet dialog box.

Remarks
dialog_result property contains the result when the form will closed.
Sheet mode is only available on macOS. For other platform show_dialog is underlying called.

◆ show_sheet_dialog()

virtual auto xtd::forms::form::show_sheet_dialog ( const xtd::forms::iwin32_window & owner) -> xtd::forms::dialog_result
virtual

Shows the form as a modal sheet dialog box.

Returns
One of the dialog_result values.
Remarks
Sheet mode is only available on macOS. For other platform show_dialog is underlying called.

◆ create() [1/13]

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

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

Returns
New xtd::forms::form created.
Examples
form2.cpp.

◆ create() [2/13]

auto xtd::forms::form::create ( const xtd::string & text) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text.

Parameters
textA string that represent text of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [3/13]

auto xtd::forms::form::create ( const xtd::string & text,
const xtd::drawing::point & location ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, and location.

Parameters
textA string that represent text of the xtd::forms::form.
locationA xtd::drawing::point that represent location of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [4/13]

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

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

Parameters
textA string that represent text of the xtd::forms::form.
locationA xtd::drawing::point that represent location of the xtd::forms::form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [5/13]

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

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

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

◆ create() [6/13]

auto xtd::forms::form::create ( const xtd::string & text,
const xtd::drawing::size & size ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, and size.

Parameters
textA string that represent text of the xtd::forms::form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [7/13]

auto xtd::forms::form::create ( const xtd::string & text,
const xtd::drawing::size & size,
const xtd::string & name ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, size, and name.

Parameters
textA string that represent text of the xtd::forms::form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
nameThe name of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [8/13]

auto xtd::forms::form::create ( const xtd::string & text,
xtd::forms::form_start_position start_position ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, and form start position.

Parameters
textA string that represent text of the xtd::forms::form.
start_positionA form_start_position that represents the starting position of the form.
Returns
New xtd::forms::form created.

◆ create() [9/13]

auto xtd::forms::form::create ( const xtd::string & text,
xtd::forms::form_start_position start_position,
const xtd::drawing::point & location ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, form start position, and location.

Parameters
textA string that represent text of the xtd::forms::form.
start_positionA form_start_position that represents the starting position of the form.
locationA xtd::drawing::point that represent location of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [10/13]

auto xtd::forms::form::create ( const xtd::string & text,
xtd::forms::form_start_position start_position,
const xtd::drawing::point & location,
const xtd::drawing::size & size ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, form start position, location, and size.

Parameters
textA string that represent text of the xtd::forms::form.
start_positionA form_start_position that represents the starting position of the form.
locationA xtd::drawing::point that represent location of the xtd::forms::form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [11/13]

auto xtd::forms::form::create ( const xtd::string & text,
xtd::forms::form_start_position start_position,
const xtd::drawing::point & location,
const xtd::drawing::size & size,
const xtd::string & name ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, form start position, location, size, and name.

Parameters
textA string that represent text of the xtd::forms::form.
start_positionA form_start_position that represents the starting position of the form.
locationA xtd::drawing::point that represent location of the xtd::forms::form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
nameThe name of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [12/13]

auto xtd::forms::form::create ( const xtd::string & text,
xtd::forms::form_start_position start_position,
const xtd::drawing::size & size ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, form start position, and size.

Parameters
textA string that represent text of the xtd::forms::form.
start_positionA form_start_position that represents the starting position of the form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create() [13/13]

auto xtd::forms::form::create ( const xtd::string & text,
xtd::forms::form_start_position start_position,
const xtd::drawing::size & size,
const xtd::string & name ) -> form
staticnodiscard

A factory to create an xtd::forms::form with specified text, form start position, size, and name.

Parameters
textA string that represent text of the xtd::forms::form.
start_positionA form_start_position that represents the starting position of the form.
sizeA xtd::drawing::size that represent size of the xtd::forms::form.
nameThe name of the xtd::forms::form.
Returns
New xtd::forms::form created.

◆ create_params()

auto xtd::forms::form::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_size()

auto xtd::forms::form::default_size ( ) const -> xtd::drawing::size
overrideprotectedvirtualnoexcept

Gets the default size of the control.

Returns
The default size of the control.

Reimplemented from xtd::forms::control.

◆ on_activated()

virtual auto xtd::forms::form::on_activated ( const xtd::event_args & e) -> void
protectedvirtual

Raises the form::activated event.

Parameters
eAn event_args that contains the event data.

◆ on_deactivate()

virtual auto xtd::forms::form::on_deactivate ( const xtd::event_args & e) -> void
protectedvirtual

Raises the form::deactivate event.

Parameters
eAn event_args that contains the event data.

◆ on_handle_created()

auto xtd::forms::form::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.

◆ on_handle_destroyed()

auto xtd::forms::form::on_handle_destroyed ( const xtd::event_args & e) -> void
overrideprotectedvirtual

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

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

Reimplemented from xtd::forms::control.

◆ on_form_closed()

virtual auto xtd::forms::form::on_form_closed ( const xtd::forms::form_closed_event_args & e) -> void
protectedvirtual

Raises the form::form_closed event.

Parameters
eA form_closed_event_args that contains the event data.

◆ on_form_closing()

virtual auto xtd::forms::form::on_form_closing ( xtd::forms::form_closing_event_args & e) -> void
protectedvirtual

Raises the form::form_closing event.

Parameters
eA form_closing_event_args that contains the event data.

◆ on_layout()

auto xtd::forms::form::on_layout ( const xtd::event_args & e) -> void
overrideprotectedvirtual

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

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

Reimplemented from xtd::forms::control.

◆ on_location_changed()

auto xtd::forms::form::on_location_changed ( const xtd::event_args & e) -> void
overrideprotectedvirtual

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

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

Reimplemented from xtd::forms::control.

◆ on_paint()

auto xtd::forms::form::on_paint ( xtd::forms::paint_event_args & e) -> void
overrideprotectedvirtual

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

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

Reimplemented from xtd::forms::control.

◆ on_region_changed()

auto xtd::forms::form::on_region_changed ( const xtd::event_args & e) -> void
overrideprotectedvirtual

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

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

Reimplemented from xtd::forms::control.

◆ on_resize()

auto xtd::forms::form::on_resize ( const xtd::event_args & e) -> void
overrideprotectedvirtual

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

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

Reimplemented from xtd::forms::control.

◆ wnd_proc()

auto xtd::forms::form::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

◆ activated

xtd::event<form, xtd::event_handler> xtd::forms::form::activated

Occurs when the form is activated in code or by the user.

Remarks
For more information about handling events, see Handling and Raising Events.

◆ deactivate

xtd::event<form, xtd::event_handler> xtd::forms::form::deactivate

Occurs when the form loses focus and is no longer the active form.

Remarks
For more information about handling events, see Handling and Raising Events.

◆ form_closed

xtd::event<form, xtd::forms::form_closed_event_handler> xtd::forms::form::form_closed

Occurs after the form is closed.

Remarks
For more information about handling events, see Handling and Raising Events.

◆ form_closing

xtd::event<form, xtd::forms::form_closing_event_handler> xtd::forms::form::form_closing

Occurs before the form is closed.

Remarks
For more information about handling events, see Handling and Raising Events.

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