pub struct SelectProps {Show 33 fields
pub value: Option<String>,
pub values: Option<Vec<String>>,
pub options: Vec<SelectOption>,
pub mode: SelectMode,
pub multiple: bool,
pub allow_clear: bool,
pub placeholder: Option<String>,
pub disabled: bool,
pub show_search: bool,
pub filter_option: Option<Rc<dyn Fn(&str, &SelectOption) -> bool>>,
pub token_separators: Option<Vec<String>>,
pub status: Option<ControlStatus>,
pub size: Option<ComponentSize>,
pub variant: Option<Variant>,
pub bordered: Option<bool>,
pub prefix: Option<Element>,
pub suffix_icon: Option<Element>,
pub placement: SelectPlacement,
pub popup_match_select_width: bool,
pub class: Option<String>,
pub root_class_name: Option<String>,
pub style: Option<String>,
pub class_names: Option<SelectClassNames>,
pub styles: Option<SelectStyles>,
pub dropdown_class: Option<String>,
pub dropdown_style: Option<String>,
pub dropdown_class_name: Option<String>,
pub dropdown_style_deprecated: Option<String>,
pub dropdown_match_select_width: Option<bool>,
pub popup_render: Option<Rc<dyn Fn(Element) -> Element>>,
pub on_change: Option<EventHandler<Vec<String>>>,
pub on_dropdown_visible_change: Option<EventHandler<bool>>,
pub on_open_change: Option<EventHandler<bool>>,
}Expand description
Props for the Select component.
Fields§
§value: Option<String>Controlled value for single-select mode.
values: Option<Vec<String>>Controlled values for multi-select mode.
options: Vec<SelectOption>Option list rendered in the dropdown.
mode: SelectModeSelection mode: single, multiple, or tags.
multiple: bool@deprecated Use mode instead. When true, allow selecting multiple options.
allow_clear: boolWhether to show a clear icon when there is a selection.
placeholder: Option<String>Placeholder text displayed when there is no selection.
disabled: boolDisable user interaction.
show_search: boolEnable simple client-side search by option label.
filter_option: Option<Rc<dyn Fn(&str, &SelectOption) -> bool>>Custom filter function: (input, option) -> bool When provided, overrides the default label-based filtering.
token_separators: Option<Vec<String>>Token separators for tags mode (e.g., [“,”, “ “]). When user types these characters, a new tag is created.
status: Option<ControlStatus>Optional visual status applied to the wrapper.
size: Option<ComponentSize>Override component size; falls back to ConfigProvider when None.
variant: Option<Variant>Visual variant (outlined/filled/borderless).
bordered: Option<bool>@deprecated Use variant="borderless" instead.
prefix: Option<Element>Prefix element displayed before the selection.
suffix_icon: Option<Element>Custom suffix icon (defaults to down arrow).
placement: SelectPlacementDropdown placement relative to the select.
popup_match_select_width: boolWhether dropdown width should match select width.
class: Option<String>§root_class_name: Option<String>Extra class applied to root element.
style: Option<String>§class_names: Option<SelectClassNames>Semantic class names for sub-parts.
styles: Option<SelectStyles>Semantic styles for sub-parts.
dropdown_class: Option<String>Optional extra classes/styles for the dropdown popup.
dropdown_style: Option<String>§dropdown_class_name: Option<String>@deprecated Please use dropdown_class instead.
dropdown_style_deprecated: Option<String>@deprecated Please use dropdown_style instead.
dropdown_match_select_width: Option<bool>@deprecated Please use popup_match_select_width instead.
popup_render: Option<Rc<dyn Fn(Element) -> Element>>Custom render function for the dropdown popup: (menu) -> Element
on_change: Option<EventHandler<Vec<String>>>Change event emitted with the full set of selected keys.
on_dropdown_visible_change: Option<EventHandler<bool>>Called when dropdown visibility changes.
on_open_change: Option<EventHandler<bool>>@deprecated Please use on_dropdown_visible_change instead.
Implementations§
Source§impl SelectProps
impl SelectProps
Sourcepub fn builder() -> SelectPropsBuilder<((), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), ())>
pub fn builder() -> SelectPropsBuilder<((), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), ())>
Create a builder for building SelectProps.
On the builder, call .value(...)(optional), .values(...)(optional), .options(...), .mode(...)(optional), .multiple(...)(optional), .allow_clear(...)(optional), .placeholder(...)(optional), .disabled(...)(optional), .show_search(...)(optional), .filter_option(...)(optional), .token_separators(...)(optional), .status(...)(optional), .size(...)(optional), .variant(...)(optional), .bordered(...)(optional), .prefix(...)(optional), .suffix_icon(...)(optional), .placement(...)(optional), .popup_match_select_width(...)(optional), .class(...)(optional), .root_class_name(...)(optional), .style(...)(optional), .class_names(...)(optional), .styles(...)(optional), .dropdown_class(...)(optional), .dropdown_style(...)(optional), .dropdown_class_name(...)(optional), .dropdown_style_deprecated(...)(optional), .dropdown_match_select_width(...)(optional), .popup_render(...)(optional), .on_change(...)(optional), .on_dropdown_visible_change(...)(optional), .on_open_change(...)(optional) to set the values of the fields.
Finally, call .build() to create the instance of SelectProps.
Trait Implementations§
Source§impl Clone for SelectProps
impl Clone for SelectProps
Source§fn clone(&self) -> SelectProps
fn clone(&self) -> SelectProps
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more