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