xtd - Reference Guide  0.2.0
Modern c++17/20 framework to create console, GUI and unit test applications on Windows, macOS, Linux, iOS and android.
Classes | Public Types | Public Attributes | Public Member Functions | Protected Member Functions | List of all members
xtd::forms::checked_list_box Class Reference

#include <checked_list_box.h>

Definition

Displays a xtd::forms::list_box in which a check box is displayed to the left of each item.

Namespace
xtd::forms
Library
xtd.forms
Remarks
This control presents a list of items that the user can navigate by using the keyboard or the scrollbar on the right side of the control. The user can place a check mark by one or more items and the checked items can be navigated with the checked_list_box::checked_item_collection and checked_list_box::checked_index_collection.
To add objects to the list at run time, assign an array of object with the push_range method. The list then displays the default string value for each object. You can add individual items to the list with the push method.
The checked_list_box object supports three states through the check_state enumeration: checked, indeterminate, and unchecked. You must set the state of indeterminate in the code because the user interface for a checked_list_box does not provide a mechanism to do so.
If use_tab_stops is true, the checked_list_box will recognize and expand tab characters in an item's text, creating columns. These tab stops are preset and cannot be changed. To use custom tab stops, set use_tab_stops to false, set use_custom_tab_offsets to true, and add the custom values to the custom_tab_offsets collection.
Note
If the use_compatible_text_rendering property is false, the custom_tab_offsets property will be ignored and replaced with standard tab offsets.
Examples
The following code example demonstrate the use of checked_list_box control.
#include <xtd/xtd>
using namespace std;
using namespace xtd;
using namespace xtd::forms;
namespace examples {
class form1 : public form {
public:
form1() {
text("Checked list box example");
client_size({200, 240});
checked_list_box1.parent(*this);
checked_list_box1.location({20, 20});
checked_list_box1.size({160, 200});
for (auto index = 1; index <= 10; ++index)
checked_list_box1.items().push_back({ustring::format("Item {}", index), index % 2 != 0});
checked_list_box1.selected_index(0);
checked_list_box1.item_check += [](object& sender, item_check_event_args& e) {
cdebug << ustring::format("item_check, index={}, new_value={}, current_value={}", e.index(), e.new_value(), e.current_value()) << endl;
};
}
private:
checked_list_box checked_list_box1;
};
}
int main() {
application::run(examples::form1());
}
Examples:
checked_list_box.cpp.

Classes

class  item
 Represent an item contained in the checked_list_box::object_collection collection. More...
 

Public Types

using checked_index_collection = std::vector< size_t >
 Encapsulates the collection of indexes of checked items (including items in an indeterminate state) More...
 
using checked_item_collection = std::vector< item >
 Encapsulates the collection of checked items, including items in an indeterminate state, in a checked_list_box control. More...
 
using object_collection = layout::arranged_element_collection< item >
 Represents the collection of items in a checked_list_box. More...
 
using selected_object_collection = std::vector< item >
 Represents the collection of selected items in the list_box. More...
 
- Public Types inherited from xtd::forms::list_box
using selected_index_collection = std::vector< size_t >
 Represents the collection containing the indexes to the selected items in a list_box. More...
 
using selected_object_collection = std::vector< item >
 Represents the collection of selected items in the list_box. More...
 
- Public Types inherited from xtd::forms::list_control
using object_collection = layout::arranged_element_collection< item, item::sorter >
 Represents the collection of items in a list_control. More...
 

Public Attributes

event< checked_list_box, item_check_event_handleritem_check
 Occurs when the checked state of an item changes. More...
 
- Public Attributes inherited from xtd::forms::list_control
event< list_control, event_handlerselected_index_changed
 Occurs when the selected_index property changes. More...
 
event< list_control, event_handlerselected_value_changed
 Occurs when the selected_value property changes. More...
 
- Public Attributes inherited from xtd::forms::control
event< control, event_handlerauto_size_changed
 Occurs when the value of the auto_size property changes. More...
 
event< control, event_handlerback_color_changed
 Occurs when the value of the back_color property changes. More...
 
event< control, event_handlerbackground_image_changed
 Occurs when the value of the background_image property changes. More...
 
event< control, event_handlerbackground_image_layout_changed
 Occurs when the value of the background_image_layout property changes. More...
 
event< control, event_handlerclick
 Occurs when the control is clicked. More...
 
event< control, event_handlerclient_size_changed
 Occurs when the value of the client_size property changes. More...
 
event< control, control_event_handlercontrol_added
 Occurs when a new control is added to the control::control_collection. More...
 
event< control, control_event_handlercontrol_removed
 Occurs when a new control is removed to the control::control_collection. More...
 
event< control, event_handlercursor_changed
 Occurs when the value of the cursor property changes. More...
 
event< control, event_handlerdock_changed
 Occurs when the value of the dock property changes. More...
 
event< control, event_handlerdouble_click
 Occurs when the control is double-clicked. More...
 
event< control, event_handlerenabled_changed
 Occurs when the value of the enabled property changes. More...
 
event< control, event_handlerfont_changed
 Occurs when the value of the font property changes. More...
 
event< control, event_handlerfore_color_changed
 Occurs when the value of the fore_color property changes. More...
 
event< control, event_handlergot_focus
 Occurs when the control receives focus. More...
 
event< control, event_handlerhandle_created
 Occurs when a handle is created for the control. More...
 
event< control, event_handlerhandle_destroyed
 Occurs when the control's handle is in the process of being destroyed. More...
 
event< control, key_event_handlerkey_down
 Occurs when a key is pressed while the control has focus. More...
 
event< control, key_press_event_handlerkey_press
 Occurs when a character. space or backspace key is pressed while the control has focus. More...
 
event< control, key_event_handlerkey_up
 Occurs when a key is released while the control has focus. More...
 
event< control, event_handlerlayout
 Occurs when a control should reposition its child controls. More...
 
event< control, event_handlerlocation_changed
 Occurs when the value of the location property changes. More...
 
event< control, event_handlerlost_focus
 Occurs when the control loses focus. More...
 
event< control, mouse_event_handlermouse_click
 Occurs when the control is clicked by the mouse. More...
 
event< control, mouse_event_handlermouse_double_click
 Occurs when the control is double clicked by the mouse. More...
 
event< control, mouse_event_handlermouse_down
 Occurs when the mouse pointer is over the control and a mouse button is pressed. More...
 
event< control, event_handlermouse_enter
 Occurs when the mouse pointer enters the control. More...
 
event< control, mouse_event_handlermouse_horizontal_wheel
 Occurs when the mouse horizontal wheel moves while the control has focus. More...
 
event< control, event_handlermouse_leave
 Occurs when the mouse pointer leaves the control. More...
 
event< control, mouse_event_handlermouse_move
 Occurs when the mouse pointer is moved over the control. More...
 
event< control, mouse_event_handlermouse_up
 Occurs when the mouse pointer is over the control and a mouse button is released. More...
 
event< control, mouse_event_handlermouse_wheel
 Occurs when the mouse wheel moves while the control has focus. More...
 
event< control, paint_event_handlerpaint
 Occurs when the control is redrawn. More...
 
event< control, event_handlerparent_changed
 Occurs when the value of the parent property changes. More...
 
event< control, event_handlerresize
 Occurs when the control is resized. More...
 
event< control, event_handlersize_changed
 Occurs when the value of the size property changes. More...
 
event< control, event_handlertext_changed
 Occurs when the value of the text property changes. More...
 
event< control, event_handlervisible_changed
 Occurs when the value of the visible property changes. More...
 

Public Member Functions

 checked_list_box ()
 Initializes a new instance of the checked_list_box class. More...
 
void begin_update ()
 Maintains performance while items are added to the checked_list_box one at a time by preventing the control from drawing until the end_update() method is called. More...
 
checked_index_collection checked_indices () const
 Collection of checked indexes in this checked_list_box. More...
 
checked_item_collection checked_items () const
 Collection of checked items in this checked_list_box. More...
 
void end_update ()
 Resumes painting the checked_list_box control after painting is suspended by the begin_update method. More...
 
forms::check_state get_item_check_state (size_t index) const
 Returns a value indicating the check state of the current item. More...
 
bool get_item_checked (size_t index) const
 Returns a value indicating whether the specified item is checked. More...
 
const xtd::ustringget_item_text (size_t index) const
 Returns the text value of the current item. More...
 
object_collectionitems ()
 Gets the collection of items in this checked_list_box. More...
 
const object_collectionitems () const
 Gets the collection of items in this checked_list_box. More...
 
const list_boxitems (const object_collection &items)
 Sets the collection of items in this checked_list_box. More...
 
list_controlselected_index (size_t selected_index) override
 When overridden in a derived class, Sets the zero-based index of the currently selected item. More...
 
std::vector< size_t > selected_indices () const override
 Gets a collection that contains the zero-based indexes of all currently selected items in the list_box. More...
 
const itemselected_item () const
 Gets the currently selected item in the checked_list_box. More...
 
list_boxselected_item (const item &selected_item)
 Sets the currently selected item in the list_box. More...
 
selected_object_collection selected_items () const
 Gets a collection containing the currently selected items in the list_box. More...
 
void set_item_check_state (size_t index, forms::check_state check_state)
 Sets the check state of the item at the specified index. More...
 
void set_item_checked (size_t index, bool checked)
 Sets check_state for the item at the specified index to checked. More...
 
void set_item_text (size_t index, const xtd::ustring &text)
 Sets the text value of the item at the specified index. More...
 
controltext (const xtd::ustring &text) override
 Sets the text associated with this control. More...
 
- Public Member Functions inherited from xtd::forms::list_box
 list_box ()
 Initializes a new instance of the list_box class. More...
 
void begin_update ()
 Maintains performance while items are added to the list_box one at a time by preventing the control from drawing until the EndUpdate() method is called. More...
 
virtual forms::border_style border_style () const
 Gets the type of border that is drawn around the list_box. More...
 
virtual list_boxborder_style (forms::border_style border_style)
 Sets the type of border that is drawn around the list_box. More...
 
drawing::color default_back_color () const override
 Gets the default background color of the control. More...
 
drawing::color default_fore_color () const override
 Gets the default foreground color of the control. More...
 
drawing::size default_size () const override
 Gets the default size of the control. More...
 
void end_update ()
 Resumes painting the list_box control after painting is suspended by the begin_update method. More...
 
object_collectionitems ()
 Gets the items of the list_box. More...
 
const object_collectionitems () const
 Gets the items of the list_box. More...
 
const list_boxitems (const object_collection &items)
 Sets the items of the list_box. More...
 
list_controlselected_index (size_t selected_index) override
 When overridden in a derived class, Sets the zero-based index of the currently selected item. More...
 
const itemselected_item () const
 Gets the currently selected item in the list_box. More...
 
list_boxselected_item (const item &selected_item)
 Sets the currently selected item in the list_box. More...
 
selected_object_collection selected_items () const
 Gets a collection containing the currently selected items in the list_box. More...
 
virtual forms::selection_mode selection_mode () const
 Gets the method in which items are selected in the list_box. More...
 
virtual list_boxselection_mode (forms::selection_mode selection_mode)
 Sets the method in which items are selected in the list_box. More...
 
virtual bool sorted () const
 Gets a value indicating whether the items in the list_box are sorted alphabetically. More...
 
virtual list_boxsorted (bool sorted)
 Sets a value indicating whether the items in the list_box are sorted alphabetically. More...
 
controltext (const xtd::ustring &text) override
 Sets the text associated with this control. More...
 
- Public Member Functions inherited from xtd::forms::list_control
virtual size_t selected_index () const
 Gets the zero-based index of the currently selected item. More...
 
- Public Member Functions inherited from xtd::forms::control
 control ()
 Initializes a new instance of the control class with default settings. More...
 
 control (const xtd::ustring &text)
 Initializes a new instance of the control class with specific text. More...
 
 control (const control &parent, const xtd::ustring &text)
 Initializes a new instance of the control class as a child control, with specific text. More...
 
 control (const xtd::ustring &text, int32_t left, int32_t top, int32_t width, int32_t height)
 Initializes a new instance of the control class with specific text, size, and location. More...
 
 control (const control &parent, const xtd::ustring &text, int32_t left, int32_t top, int32_t width, int32_t height)
 Initializes a new instance of the control class as a child control, with specific text, size, and location. More...
 
virtual anchor_styles anchor () const
 Gets the edges of the container to which a control is bound and determines how a control is resized with its parent. More...
 
virtual controlanchor (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. More...
 
virtual drawing::point auto_scroll_point () const
 Gets where this control is scrolled to in scroll_control_into_view(control). More...
 
virtual bool auto_size () const
 Gets a value that indicates whether the control resizes based on its contents. More...
 
virtual controlauto_size (bool auto_size)
 Sets a value that indicates whether the control resizes based on its contents. More...
 
virtual drawing::color back_color () const
 Gets the background color for the control. More...
 
virtual controlback_color (const drawing::color &color)
 Sets the background color for the control. More...
 
virtual const xtd::drawing::imagebackground_image () const
 Gets the background image displayed in the control. More...
 
virtual controlbackground_image (const xtd::drawing::image &background_image)
 Sets the background image displayed in the control. More...
 
virtual xtd::forms::image_layout background_image_layout () const
 Gets the background image layout as defined in the xtd::forms::image_layout enumeration. More...
 
virtual controlbackground_image_layout (xtd::forms::image_layout background_image_layout)
 Sets the background image layout as defined in the xtd::forms::image_layout enumeration. More...
 
std::shared_ptr< xtd::iasync_resultbegin_invoke (delegate< void()> value)
 Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on. More...
 
std::shared_ptr< xtd::iasync_resultbegin_invoke (delegate< void(std::vector< std::any >)> value, const std::vector< std::any > &args)
 Executes the specified delegate asynchronously with the specified arguments, on the thread that the control's underlying handle was created on. More...
 
virtual int32_t bottom () const
 Gets the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area. More...
 
virtual drawing::rectangle bounds () const
 Gets the size and location of the control including its nonclient elements, in pixels, relative to the parent control. More...
 
virtual controlbounds (const drawing::rectangle &bounds)
 Sets the size and location of the control including its nonclient elements, in pixels, relative to the parent control. More...
 
virtual void bring_to_front ()
 Brings the control to the front of the z-order. More...
 
virtual bool can_focus () const
 Gets a value indicating whether the control can receive focus. More...
 
bool can_raise_events () const override
 Determines if events can be raised on the control. More...
 
virtual bool can_select () const
 Gets a value indicating whether the control can be selected. More...
 
virtual const drawing::rectangleclient_rectangle () const
 Gets the rectangle that represents the client area of the control. More...
 
virtual const drawing::sizeclient_size () const
 Gets the height and width of the client area of the control. More...
 
virtual controlclient_size (const drawing::size &client_size)
 Sets the height and width of the client area of the control. More...
 
virtual xtd::ustring company_name () const
 Gets the name of the company or creator of the application containing the control. More...
 
virtual control_collectioncontrols ()
 Gets the collection of controls contained within the control. More...
 
virtual const control_collectioncontrols () const
 Gets the collection of controls contained within the control. More...
 
void create_control ()
 Forces the creation of the visible control, including the creation of the handle and any visible child controls. More...
 
drawing::graphics create_graphics () const
 Creates the xtd::drawing::graphics for the control. More...
 
virtual void create_handle ()
 Creates a handle for the control. More...
 
virtual bool created ()
 Gets a value indicating whether the control has been created. More...
 
virtual forms::cursor cursor () const
 Gets the cursor that is displayed when the mouse pointer is over the control. More...
 
virtual controlcursor (const forms::cursor &cursor)
 Sets the cursor that is displayed when the mouse pointer is over the control. More...
 
virtual forms::cursor default_cursor () const
 Gets the default cursor for the control. More...
 
virtual drawing::font default_font () const
 Gets the default font of the control. More...
 
virtual void destroy_control ()
 Forces the destruction of the visible control, including the destruction of the handle and any visible child controls. More...
 
virtual void destroy_handle ()
 Destroys the handle associated with the control. More...
 
virtual drawing::rectangle display_rectangle () const
 Gets the rectangle that represents the display area of the control. More...
 
virtual dock_style dock () const
 Gets or sets which control borders are docked to its parent control and determines how a control is resized with its parent. More...
 
virtual controldock (dock_style dock)
 Sets or sets which control borders are docked to its parent control and determines how a control is resized with its parent. More...
 
virtual bool double_buffered () const
 Gets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker. More...
 
virtual controldouble_buffered (bool double_buffered)
 Sets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker. More...
 
virtual bool enabled () const
 Gets a value indicating whether the control can respond to user interaction. More...
 
virtual controlenabled (bool enabled)
 Sets a value indicating whether the control can respond to user interaction. More...
 
void end_invoke (std::shared_ptr< xtd::iasync_result > async)
 Retrieves the return value of the asynchronous operation represented by the async_result_invoke passed. More...
 
bool focus ()
 Sets input focus to the control. More...
 
virtual bool focused () const
 Gets a value indicating whether the control has input focus. More...
 
virtual drawing::font font () const
 Gets the font of the text displayed by the control. More...
 
virtual controlfont (const drawing::font &font)
 Sets the font of the text displayed by the control. More...
 
virtual drawing::color fore_color () const
 Gets the foreground color of the control. More...
 
virtual controlfore_color (const drawing::color &color)
 Sets the foreground color of the control. More...
 
size_t get_child_index (intptr_t child) const
 Retrieves the index of a control within the control collection. More...
 
size_t get_child_index (intptr_t 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. More...
 
intptr_t handle () const override
 Gets the window handle that the control is bound to. More...
 
virtual int32_t height () const
 Gets the height of the control. More...
 
virtual controlheight (int32_t height)
 Sets the height of the control. More...
 
virtual void hide ()
 Conceals the control from the user. More...
 
virtual void invalidate () const
 Invalidates the entire surface of the control and causes the control to be redrawn. More...
 
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. More...
 
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. More...
 
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. More...
 
void invoke (delegate< void()> value)
 Executes the specified delegate on the thread that owns the control's underlying window handle. More...
 
void invoke (delegate< void(std::vector< std::any >)> value, const std::vector< std::any > &args)
 Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. More...
 
bool is_handle_created () const
 Gets a value indicating whether the control has a handle associated with it. More...
 
virtual int32_t left () const
 Gets the distance, in pixels, between the left edge of the control and the left edge of its container's client area. More...
 
virtual controlleft (int32_t left)
 Sets the distance, in pixels, between the left edge of the control and the left edge of its container's client area. More...
 
virtual drawing::point location () const
 Gets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. More...
 
virtual controllocation (const drawing::point &location)
 Sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. More...
 
virtual forms::padding margin () const
 Gets the space between controls. More...
 
virtual controlmargin (const forms::padding &margin)
 Sets the space between controls. More...
 
virtual const drawing::sizemaximum_size () const
 Gets the size that is the upper limit that xtd::forms::control::get_preferred_size can specify. More...
 
virtual controlmaximum_size (const drawing::size &size)
 Sets the size that is the upper limit that xtd::forms::control::get_preferred_size can specify. More...
 
virtual const drawing::sizeminimum_size () const
 Gets the size that is the lower limit that xtd::forms::control::get_preferred_size can specify. More...
 
virtual controlminimum_size (const drawing::size &size)
 Sets the size that is the lower limit that xtd::forms::control::get_preferred_size can specify. More...
 
virtual const xtd::ustringname () const
 Gets the name of the control. More...
 
virtual controlname (const xtd::ustring &name)
 Sets the name of the control. More...
 
virtual forms::padding padding () const
 Gets padding within the control. More...
 
virtual controlpadding (const forms::padding &padding)
 Sets padding within the control. More...
 
virtual std::optional< control_refparent () const
 Gets the parent container of the control. More...
 
virtual controlparent (const control &parent)
 Sets the parent container of the control. More...
 
virtual controlparent (std::nullptr_t)
 Resets the parent container of the control. More...
 
void perform_layout ()
 Forces the control to apply layout logic to all its child controls. More...
 
xtd::drawing::point point_to_client (const xtd::drawing::point &p)
 Computes the location of the specified screen point into client coordinates. More...
 
xtd::drawing::point point_to_screen (const xtd::drawing::point &p)
 Computes the location of the specified client point into screen coordinates. More...
 
virtual bool pre_process_message (xtd::forms::message &message)
 Preprocesses keyboard or input messages within the message loop before they are dispatched. More...
 
virtual xtd::ustring product_name () const
 Gets the product name of the assembly containing the control. More...
 
bool recreating_handle () const
 Gets a value indicating whether the control is currently re-creating its handle. More...
 
virtual void refresh () const
 Forces the control to invalidate its client area and immediately redraw itself and any child controls. More...
 
void resume_layout ()
 Resumes usual layout logic. More...
 
void resume_layout (bool perform_layout)
 Resumes usual layout logic, optionally forcing an immediate layout of pending layout requests. More...
 
virtual int32_t right () const
 Gets the distance, in pixels, between the right edge of the control and the left edge of its container's client area. More...
 
intptr_t send_message (intptr_t hwnd, int32_t msg, intptr_t wparam, intptr_t lparam) const
 Send a message with specified hwnd, message, wparam and lparam. More...
 
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. More...
 
void set_bounds (int32_t x, int32_t y, int32_t width, int32_t height)
 Sets the bounds of the control to the specified location and size. More...
 
void set_bounds (int32_t x, int32_t y, int32_t width, int32_t height, bounds_specified specified)
 Sets the specified bounds of the control to the specified location and size. More...
 
virtual void show ()
 Displays the control to the user. More...
 
virtual const drawing::sizesize () const
 Gets the height and width of the control. More...
 
virtual controlsize (const drawing::size &size)
 Sets the height and width of the control. More...
 
void suspend_layout ()
 Temporarily suspends the layout logic for the control. More...
 
virtual std::any tag () const
 Gets the object that contains data about the control. More...
 
virtual controltag (std::any tag)
 Sets the object that contains data about the control. More...
 
virtual const xtd::ustringtext () const
 Gets the text associated with this control. More...
 
xtd::ustring to_string () const noexcept override
 Returns a string containing the name of the control, if any. More...
 
virtual int32_t top () const
 Gets the distance, in pixels, between the top edge of the control and the top edge of its container's client area. More...
 
virtual controltop (int32_t top)
 Sets the distance, in pixels, between the top edge of the control and the top edge of its container's client area. More...
 
virtual std::optional< control_reftop_level_control () const
 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. More...
 
virtual void update () const
 Causes the control to redraw the invalidated regions within its client area. More...
 
virtual bool visible () const
 Gets a value indicating whether the control and all its child controls are displayed. More...
 
virtual controlvisible (bool visible)
 Sets a value indicating whether the control and all its child controls are displayed. More...
 
virtual int32_t width () const
 Gets the width of the control. More...
 
virtual controlwidth (int32_t width)
 Sets the width of the control. More...
 
- Public Member Functions inherited from xtd::object
 object ()=default
 Create a new instance of the ultimate base class object. More...
 
virtual bool equals (const object &obj) const noexcept
 Determines whether the specified object is equal to the current object. More...
 
virtual size_t get_hash_code () const noexcept
 Serves as a hash function for a particular type. More...
 
template<typename object_t >
std::unique_ptr< object_t > memberwise_clone () const
 Gets the type of the current instance. More...
 

Protected Member Functions

bool allow_selection () override
 Gets a value indicating whether the list enables selection of list items. More...
 
forms::create_params create_params () const override
 Gets the required creation parameters when the control handle is created. More...
 
void on_handle_created (const event_args &e) override
 Raises the control::handle_created event. More...
 
virtual void on_item_check (item_check_event_args &e)
 Raises the checked_list_box::item_check event. More...
 
void on_selected_value_changed (const event_args &e) override
 Raises the list_control::selected_value_changed event. More...
 
void wm_mouse_double_click (message &message) override
 Processes the mouse double-click message the list_box control receives from the top-level window. More...
 
void wm_mouse_down (message &message) override
 Processes the mouse down message the list_box control receives from the top-level window. More...
 
void wm_mouse_up (message &message) override
 Processes the mouse up message the list_box control receives from the top-level window. More...
 
void wm_reflect_command (message &message) override
 Processes the command message the list_box control receives from the top-level window. More...
 
void wnd_proc (message &message) override
 Processes Windows messages. More...
 
- Protected Member Functions inherited from xtd::forms::list_box
bool allow_selection () override
 Gets a value indicating whether the list enables selection of list items. More...
 
forms::create_params create_params () const override
 Gets the required creation parameters when the control handle is created. More...
 
void on_handle_created (const event_args &e) override
 Raises the control::handle_created event. More...
 
void on_selected_value_changed (const event_args &e) override
 Raises the list_control::selected_value_changed event. More...
 
void wnd_proc (message &message) override
 Processes Windows messages. More...
 
- Protected Member Functions inherited from xtd::forms::list_control
 list_control ()
 Initializes a new instance of the list_control class. More...
 
virtual void on_selected_index_changed (const event_args &e)
 Raises the list_control::selected_index_changed event. More...
 
- Protected Member Functions inherited from xtd::forms::control
virtual void def_wnd_proc (message &message)
 Sends the specified message to the default window procedure. More...
 
bool get_style (control_styles flag) const
 Retrieves the value of the specified control style bit for the control. More...
 
virtual drawing::size measure_control () const
 Measure this control. More...
 
drawing::size measure_text () const
 Measure this control text. More...
 
virtual void on_auto_size_changed (const event_args &e)
 Raises the control::auto_size_changed event. More...
 
virtual void on_back_color_changed (const event_args &e)
 Raises the control::back_color_changed event. More...
 
virtual void on_background_image_changed (const event_args &e)
 Raises the control::background_image_changed event. More...
 
virtual void on_background_image_layout_changed (const event_args &e)
 Raises the control::background_image_layout_changed event. More...
 
virtual void on_click (const event_args &e)
 Raises the control::click event. More...
 
virtual void on_client_size_changed (const event_args &e)
 Raises the control::client_size_changed event. More...
 
virtual void on_control_added (const control_event_args &e)
 Raises the control::control_added event. More...
 
virtual void on_control_removed (const control_event_args &e)
 Raises the control::control_removed event. More...
 
virtual void on_create_control ()
 Raises the control::create_control event. More...
 
virtual void on_cursor_changed (const event_args &e)
 Raises the control::cursor_changed event. More...
 
virtual void on_dock_changed (const event_args &e)
 Raises the control::dock_changed event. More...
 
virtual void on_double_click (const event_args &e)
 Raises the double_click event. More...
 
virtual void on_enabled_changed (const event_args &e)
 Raises the control::enabled_changed event. More...
 
virtual void on_font_changed (const event_args &e)
 Raises the control::font_changed event. More...
 
virtual void on_fore_color_changed (const event_args &e)
 Raises the control::fore_color_changed event. More...
 
virtual void on_got_focus (const event_args &e)
 Raises the control::got_focus event. More...
 
virtual void on_handle_destroyed (const event_args &e)
 Raises the control::handle_destroyed event. More...
 
virtual void on_key_down (key_event_args &e)
 Raises the control::key_down event. More...
 
virtual void on_key_press (key_press_event_args &e)
 Raises the control::key_press event. More...
 
virtual void on_key_up (key_event_args &e)
 Raises the control::key_up event. More...
 
virtual void on_layout (const event_args &e)
 Raises the control::layout event. More...
 
virtual void on_location_changed (const event_args &e)
 Raises the control::location_changed event. More...
 
virtual void on_lost_focus (const event_args &e)
 Raises the control::lost_focus event. More...
 
virtual void on_mouse_click (const mouse_event_args &e)
 Raises the control::mouse_click event. More...
 
virtual void on_mouse_double_click (const mouse_event_args &e)
 Raises the control::mouse_double_click event. More...
 
virtual void on_mouse_down (const mouse_event_args &e)
 Raises the control::mouse_down event. More...
 
virtual void on_mouse_enter (const event_args &e)
 Raises the control::mouse_enter event. More...
 
virtual void on_mouse_horizontal_wheel (const mouse_event_args &e)
 Raises the control::mouse_horizontal_wheel event. More...
 
virtual void on_mouse_leave (const event_args &e)
 Raises the control::mouse_leave event. More...
 
virtual void on_mouse_move (const mouse_event_args &e)
 Raises the control::mouse_move event. More...
 
virtual void on_mouse_up (const mouse_event_args &e)
 Raises the control::mouse_up event. More...
 
virtual void on_mouse_wheel (const mouse_event_args &e)
 Raises the control::mouse_wheel event. More...
 
virtual void on_paint (paint_event_args &e)
 Raises the control::paint event. More...
 
virtual void on_parent_back_color_changed (const event_args &e)
 Raises the control::parent_back_color_changed event. More...
 
virtual void on_parent_changed (const event_args &e)
 Raises the control::parent_changed event. More...
 
virtual void on_parent_cursor_changed (const event_args &e)
 Raises the control::parent_cursor_changed event. More...
 
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.. More...
 
virtual void on_parent_font_changed (const event_args &e)
 Raises the control::parent_font_changed event. More...
 
virtual void on_parent_fore_color_changed (const event_args &e)
 Raises the control::parent_fore_color_changed event. More...
 
virtual void on_resize (const event_args &e)
 Raises the control::resize event. More...
 
virtual void on_size_changed (const event_args &e)
 Raises the control::size_changed event. More...
 
virtual void on_text_changed (const event_args &e)
 Raises the control::text_changed event. More...
 
virtual void on_visible_changed (const event_args &e)
 Raises the control::visible_changed event. More...
 
virtual void recreate_handle ()
 Forces the re-creation of the handle for the control. More...
 
virtual void set_bounds_core (int32_t x, int32_t y, int32_t width, int32_t height, bounds_specified specified)
 Performs the work of setting the specified bounds of this control. More...
 
virtual void set_client_size_core (int32_t width, int32_t height)
 Sets the size of the client area of the control. More...
 
void set_style (control_styles flag, bool value)
 Sets a specified control_styles flag to either true or false. More...
 
- Protected Member Functions inherited from xtd::forms::component
 component ()=default
 Initialises a new instance of the component class. More...
 
bool design_mode () const
 Gets a value that indicates whether the component is currently in design mode. More...
 

Additional Inherited Members

- Static Public Attributes inherited from xtd::forms::list_control
static const size_t npos = std::numeric_limits<size_t>::max()
 This is a special value equal to the maximum value representable by the type size_t. More...
 
- Static Public Member Functions inherited from xtd::forms::control
template<typename control_t >
static std::unique_ptr< control_t > create (const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified location ,size back_color and fore_color. More...
 
template<typename control_t >
static std::unique_ptr< control_t > create (const control &parent, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified parent, location ,size back_color and fore_color. More...
 
template<typename control_t >
static std::unique_ptr< control_t > create (const xtd::ustring &text, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified text, location ,size back_color and fore_color. More...
 
template<typename control_t >
static std::unique_ptr< control_t > create (const control &parent, const xtd::ustring &text, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
 A factory to create a specified control with specified parent, text, location ,size back_color and fore_color. More...
 
static std::optional< control_reffrom_child_handle (intptr_t handle)
 Retrieves the control that contains the specified handle. More...
 
static std::optional< control_reffrom_handle (intptr_t handle)
 Returns the control that is currently associated with the specified handle. More...
 
static forms::keys modifier_keys ()
 Gets a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state. More...
 
static forms::mouse_buttons mouse_buttons ()
 Gets a value indicating which of the mouse buttons is in a pressed state. More...
 
- Static Public Member Functions inherited from xtd::object
static bool equals (const object &object_a, const object &object_b) noexcept
 Determines whether the specified object instances are considered equal. More...
 
static bool reference_equals (const object &object_a, const object &object_b) noexcept
 Determines whether the specified object instances are the same instance. More...
 

Member Typedef Documentation

◆ checked_index_collection

Encapsulates the collection of indexes of checked items (including items in an indeterminate state)

◆ checked_item_collection

Encapsulates the collection of checked items, including items in an indeterminate state, in a checked_list_box control.

◆ object_collection

Represents the collection of items in a checked_list_box.

◆ selected_object_collection

Represents the collection of selected items in the list_box.

Constructor & Destructor Documentation

◆ checked_list_box()

xtd::forms::checked_list_box::checked_list_box ( )

Initializes a new instance of the checked_list_box class.

Remarks
By default, checked_list_box uses set_style and the resize_redraw value of control_styles to specify that the control is redrawn when resized.

Member Function Documentation

◆ allow_selection()

bool xtd::forms::checked_list_box::allow_selection ( )
inlineoverrideprotectedvirtual

Gets a value indicating whether the list enables selection of list items.

Returns
true if the list enables list item selection; otherwise, false. The default is true.

Reimplemented from xtd::forms::list_control.

◆ begin_update()

void xtd::forms::checked_list_box::begin_update ( )

Maintains performance while items are added to the checked_list_box one at a time by preventing the control from drawing until the end_update() method is called.

Remarks
The preferred way to add multiple items to the list_box is to use the push_back_range method of the list_box::object_collection class (through the items property of the list_box). This enables you to add an array of items to the list in a single operation. However, if you want to add items one at a time using the Add method of the list_box::object_collection class, you can use the begin_update method to prevent the control from repainting the list_box each time an item is added to the list. Once you have completed the task of adding items to the list, call the end_update method to enable the list_box to repaint. This way of adding items can prevent flickered drawing of the list_box when a large number of items are being added to the list.

◆ checked_indices()

checked_index_collection xtd::forms::checked_list_box::checked_indices ( ) const

Collection of checked indexes in this checked_list_box.

Returns
The checked_list_box::checked_index_collection collection for the checked_list_box.
Remarks
The collection of checked indexes is a subset of the indexes into the collection of all items in the checked_list_box control. These indexes specify items in a checked or indeterminate state.

◆ checked_items()

checked_item_collection xtd::forms::checked_list_box::checked_items ( ) const

Collection of checked items in this checked_list_box.

Returns
The checked_list_box::checked_item_collection collection for the checked_list_box.
Remarks
The collection is a subset of the objects in the items collection, representing only those items whose xtd::forms::check_state is checked or indeterminate. The indexes in this collection are in ascending order.

◆ create_params()

forms::create_params xtd::forms::checked_list_box::create_params ( ) const
overrideprotectedvirtual

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.

◆ end_update()

void xtd::forms::checked_list_box::end_update ( )

Resumes painting the checked_list_box control after painting is suspended by the begin_update method.

Remarks
The preferred way to add multiple items to the list_box is to use the push_back_range method of the list_box::object_collection class (through the items property of the list_box). This enables you to add an array of items to the list in a single operation. However, if you want to add items one at a time using the Add method of the list_box::object_collection class, you can use the begin_update method to prevent the control from repainting the list_box each time an item is added to the list. Once you have completed the task of adding items to the list, call the end_update method to enable the list_box to repaint. This way of adding items can prevent flickered drawing of the list_box when a large number of items are being added to the list.

◆ get_item_check_state()

forms::check_state xtd::forms::checked_list_box::get_item_check_state ( size_t  index) const

Returns a value indicating the check state of the current item.

Parameters
indexThe index of the item.
Returns
One of the check_state values.
Remarks
The get_item_check_state method provides the ability to get the check_state value of an item, given the index. If you never set the check state of an item to indeterminate, then use the getItem_checked method.

◆ get_item_checked()

bool xtd::forms::checked_list_box::get_item_checked ( size_t  index) const

Returns a value indicating whether the specified item is checked.

Parameters
indexThe index of the item.
Returns
true if the item is checked; otherwise, false.
Remarks
get_item_checked returns true if the value of CheckState is checked or indeterminate for the item. To determine the specific state the item is in, use the get_item_check_state method.

◆ get_item_text()

const xtd::ustring& xtd::forms::checked_list_box::get_item_text ( size_t  index) const

Returns the text value of the current item.

Parameters
indexThe index of the item.
Returns
A string that represent the text value of the current item.

◆ items() [1/3]

object_collection& xtd::forms::checked_list_box::items ( )
inline

Gets the collection of items in this checked_list_box.

Returns
The checked_list_box::object_collection collection representing the items in the checked_list_box.
Remarks
The items property enables you to obtain a reference to the list of items that are currently stored in a checked_list_box control. With this reference, you can add items, remove items, and obtain a count of the items in the collection.

◆ items() [2/3]

const object_collection& xtd::forms::checked_list_box::items ( ) const
inline

Gets the collection of items in this checked_list_box.

Returns
The checked_list_box::object_collection collection representing the items in the checked_list_box.
Remarks
The items property enables you to obtain a reference to the list of items that are currently stored in a checked_list_box control. With this reference, you can add items, remove items, and obtain a count of the items in the collection.

◆ items() [3/3]

const list_box& xtd::forms::checked_list_box::items ( const object_collection items)
inline

Sets the collection of items in this checked_list_box.

Parameters
itemsThe checked_list_box::object_collection collection representing the items in the checked_list_box.

◆ on_handle_created()

void xtd::forms::checked_list_box::on_handle_created ( const event_args e)
overrideprotectedvirtual

Raises the control::handle_created event.

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

Reimplemented from xtd::forms::control.

◆ on_item_check()

virtual void xtd::forms::checked_list_box::on_item_check ( item_check_event_args e)
inlineprotectedvirtual

Raises the checked_list_box::item_check event.

Parameters
eAn item_check_event_args that contains the event data.

◆ on_selected_value_changed()

void xtd::forms::checked_list_box::on_selected_value_changed ( const event_args e)
overrideprotectedvirtual

Raises the list_control::selected_value_changed event.

Reimplemented from xtd::forms::list_control.

◆ selected_index()

list_control& xtd::forms::checked_list_box::selected_index ( size_t  selected_index)
overridevirtual

When overridden in a derived class, Sets the zero-based index of the currently selected item.

Parameters
selected_indexA zero-based index of the currently selected item. A value of negative one (-1) is returned if no item is selected.
Returns
Current list_control.

Implements xtd::forms::list_control.

◆ selected_indices()

std::vector<size_t> xtd::forms::checked_list_box::selected_indices ( ) const
overridevirtual

Gets a collection that contains the zero-based indexes of all currently selected items in the list_box.

A list_box.selected_index_collection containing the indexes of the currently selected items in the control. If no items are currently selected, an empty ListBox.SelectedIndexCollection is returned.

Remarks
For a multiple-selection list_box, this property returns a collection containing the indexes to all items that are selected in the list_box. For a single-selection ListBox, this property returns a collection containing a single element containing the index of the only selected item in the list_box. For more information about how to manipulate the items of the collection, see list_box::selected_index_collection.
The list_box class provides a number of ways to reference selected items. Instead of using the selected_indices property to obtain the index position of the currently selected item in a single-selection list_box, you can use the selected_index property. If you want to obtain the item that is currently selected in the list_box, instead of the index position of the item, use the selected_item property. In addition, you can use the selected_items property if you want to obtain all the selected items in a multiple-selection list_box.

Reimplemented from xtd::forms::list_box.

◆ selected_item() [1/2]

const item& xtd::forms::checked_list_box::selected_item ( ) const
inline

Gets the currently selected item in the checked_list_box.

Returns
An object that represents the current selection in the control.
Remarks
For a standard list_box, you can use this property to determine which item is selected in the list_box. If the selection_mode property of the list_box is set to either selection_mode::multi_simple or selection_mode::multi_extended (which indicates a multiple-selection list_box) and multiple items are selected in the list, this property can return any selected item.
To retrieve a collection containing all selected items in a multiple-selection list_box, use the selected_items property. If you want to obtain the index position of the currently selected item in the list_box, use the selected_index property. In addition, you can use the selected_indices property to obtain all the selected indexes in a multiple-selection list_box.

◆ selected_item() [2/2]

list_box& xtd::forms::checked_list_box::selected_item ( const item selected_item)

Sets the currently selected item in the list_box.

Parameters
selected_itemAn object that represents the current selection in the control.
Remarks
For a standard list_box, you can use this property to determine which item is selected in the list_box. If the selection_mode property of the list_box is set to either selection_mode::multi_simple or selection_mode::multi_extended (which indicates a multiple-selection list_box) and multiple items are selected in the list, this property can return any selected item.
To retrieve a collection containing all selected items in a multiple-selection list_box, use the selected_items property. If you want to obtain the index position of the currently selected item in the list_box, use the selected_index property. In addition, you can use the selected_indices property to obtain all the selected indexes in a multiple-selection list_box.

◆ selected_items()

selected_object_collection xtd::forms::checked_list_box::selected_items ( ) const

Gets a collection containing the currently selected items in the list_box.

Returns
A list_box::selected_object_collection containing the currently selected items in the control.
Remarks
For a multiple-selection list_box, this property returns a collection containing all items that are selected in the list_box. For a single-selection list_box, this property returns a collection containing a single element containing the only selected item in the list_box. For more information about how to manipulate the items of the collection, see list_box::selected_object_collection.
The list_box class provides a number of ways to reference selected items. Instead of using the selected_items property to obtain the currently selected item in a single-selection list_box, you can use the selected_item property. If you want to obtain the index position of an item that is currently selected in the list_box, instead of the item itself, use the selected_index property. In addition, you can use the selected_indices property if you want to obtain the index positions of all selected items in a multiple-selection list_box.

◆ set_item_check_state()

void xtd::forms::checked_list_box::set_item_check_state ( size_t  index,
forms::check_state  check_state 
)

Sets the check state of the item at the specified index.

Parameters
indexThe index of the item to set the check state for.
check_stateOne of the check_state values.
Remarks
The set_item_check_state method raises the item_check event.
Items whose check_state is set to indeterminate appear with a check mark in the check box, but the box is grayed to indicate the indeterminate status of the checked item.

◆ set_item_checked()

void xtd::forms::checked_list_box::set_item_checked ( size_t  index,
bool  checked 
)

Sets check_state for the item at the specified index to checked.

Parameters
indexThe index of the item to set the check state for.
checkedtrue to set the item as checked; otherwise, false.
Remarks
When a value of true is passed, this method sets the check_state value to checked. A value of false sets check_state to unchecked.

◆ set_item_text()

void xtd::forms::checked_list_box::set_item_text ( size_t  index,
const xtd::ustring text 
)

Sets the text value of the item at the specified index.

Parameters
indexThe index of the item to set the check state for.
textA string that represent the text value.

◆ text()

control& xtd::forms::checked_list_box::text ( const xtd::ustring text)
inlineoverridevirtual

Sets the text associated with this control.

Parameters
textThe text associated with this control.

Reimplemented from xtd::forms::control.

◆ wm_mouse_double_click()

void xtd::forms::checked_list_box::wm_mouse_double_click ( message message)
overrideprotectedvirtual

Processes the mouse double-click message the list_box control receives from the top-level window.

Parameters
messageThe message the top-level window sent to the list_box control.

Reimplemented from xtd::forms::list_box.

◆ wm_mouse_down()

void xtd::forms::checked_list_box::wm_mouse_down ( message message)
overrideprotectedvirtual

Processes the mouse down message the list_box control receives from the top-level window.

Parameters
messageThe message the top-level window sent to the list_box control.

Reimplemented from xtd::forms::list_box.

◆ wm_mouse_up()

void xtd::forms::checked_list_box::wm_mouse_up ( message message)
overrideprotectedvirtual

Processes the mouse up message the list_box control receives from the top-level window.

Parameters
messageThe message the top-level window sent to the list_box control.

Reimplemented from xtd::forms::list_box.

◆ wm_reflect_command()

void xtd::forms::checked_list_box::wm_reflect_command ( message message)
overrideprotectedvirtual

Processes the command message the list_box control receives from the top-level window.

Parameters
messageThe message the top-level window sent to the list_box control.

Reimplemented from xtd::forms::list_box.

◆ wnd_proc()

void xtd::forms::checked_list_box::wnd_proc ( message m)
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

◆ item_check

event<checked_list_box, item_check_event_handler> xtd::forms::checked_list_box::item_check

Occurs when the checked state of an item changes.


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