RadComboBox
Represents a versatile dropdown control that combines a text input field with a selectable list of items. The RadComboBox provides both editable and non-editable modes, supports single and multiple selection, advanced filtering capabilities, and extensive customization options for enterprise applications.
Definition
Namespace:Telerik.Maui.Controls
Assembly:Telerik.Maui.Controls.dll
Syntax:
public class RadComboBox : RadBorder, IRadBorder, IRadContentView, IContentView, IView, IElement, ITransform, IPadding, ICrossPlatformLayout, IHighlightLabelProvider
Inheritance: objectRadContentViewRadBorderRadComboBox
Implements:
Inherited Members
Constructors
Initializes a new instance of the RadComboBox class.
public RadComboBox()
Fields
ActualClearButtonStyleProperty
BindableProperty
Identifies the ActualClearButtonStyle property.
public static readonly BindableProperty ActualClearButtonStyleProperty
ActualDropDownButtonStyleProperty
BindableProperty
Identifies the ActualDropDownButtonStyle property.
public static readonly BindableProperty ActualDropDownButtonStyleProperty
ActualTextInputStyleProperty
BindableProperty
Identifies the ActualTextInputStyle property.
public static readonly BindableProperty ActualTextInputStyleProperty
BackgroundColorProperty
BindableProperty
Identifies the BackgroundColor property.
public static readonly BindableProperty BackgroundColorProperty
BorderBrushProperty
BindableProperty
Identifies the BorderBrush property.
public static readonly BindableProperty BorderBrushProperty
ClearButtonStyleProperty
BindableProperty
Identifies the ClearButtonStyle property.
public static readonly BindableProperty ClearButtonStyleProperty
ClearSelectionCommandProperty
BindableProperty
Identifies the ClearSelectionCommand property.
public static readonly BindableProperty ClearSelectionCommandProperty
ControlTemplateProperty
BindableProperty
Identifies the ControlTemplate bindable property.
public static readonly BindableProperty ControlTemplateProperty
DisplayMemberPathProperty
BindableProperty
Identifies the DisplayMemberPath property.
public static readonly BindableProperty DisplayMemberPathProperty
DropDownBackgroundColorProperty
BindableProperty
Identifies the DropDownBackgroundColor property.
public static readonly BindableProperty DropDownBackgroundColorProperty
DropDownBorderColorProperty
BindableProperty
Identifies the DropDownBorderColor property.
public static readonly BindableProperty DropDownBorderColorProperty
DropDownBorderThicknessProperty
BindableProperty
Identifies the DropDownBorderThickness property.
public static readonly BindableProperty DropDownBorderThicknessProperty
DropDownButtonStyleProperty
BindableProperty
Identifies the DropDownButtonStyle property.
public static readonly BindableProperty DropDownButtonStyleProperty
DropDownCornerRadiusProperty
BindableProperty
Identifies the DropDownCornerRadius property.
public static readonly BindableProperty DropDownCornerRadiusProperty
DropDownHeightProperty
BindableProperty
Identifies the DropDownHeight bindable property.
public static readonly BindableProperty DropDownHeightProperty
DropDownMaxHeightProperty
BindableProperty
Identifies the DropDownMaxHeight bindable property.
public static readonly BindableProperty DropDownMaxHeightProperty
DropDownVerticalOffsetProperty
BindableProperty
Identifies the DropDownVerticalOffset property.
public static readonly BindableProperty DropDownVerticalOffsetProperty
DropDownWidthProperty
BindableProperty
Identifies the DropDownWidth bindable property.
public static readonly BindableProperty DropDownWidthProperty
FilteredItemsProperty
BindableProperty
Identifies the FilteredItems property.
public static readonly BindableProperty FilteredItemsProperty
FilteringBehaviorProperty
BindableProperty
Identifies the FilteringBehavior bindable property.
public static readonly BindableProperty FilteringBehaviorProperty
FontAttributesProperty
BindableProperty
Identifies the FontAttributes property.
public static readonly BindableProperty FontAttributesProperty
FontFamilyProperty
BindableProperty
Identifies the FontFamily property.
public static readonly BindableProperty FontFamilyProperty
FontSizeProperty
BindableProperty
Identifies the FontSize property.
public static readonly BindableProperty FontSizeProperty
FooterTemplateProperty
BindableProperty
Identifies the FooterTemplate bindable property.
public static readonly BindableProperty FooterTemplateProperty
HeaderTemplateProperty
BindableProperty
Identifies the HeaderTemplate bindable property.
public static readonly BindableProperty HeaderTemplateProperty
HighlightTextColorProperty
BindableProperty
Identifies the HighlightTextColor property.
public static readonly BindableProperty HighlightTextColorProperty
IsClearButtonVisibleProperty
BindableProperty
Identifies the IsClearButtonVisible property.
public static readonly BindableProperty IsClearButtonVisibleProperty
IsDropDownClosedOnSelectionProperty
BindableProperty
Identifies the IsDropDownClosedOnSelection bindable property.
public static readonly BindableProperty IsDropDownClosedOnSelectionProperty
IsDropDownOpenProperty
BindableProperty
Identifies the IsDropDownOpen property.
public static readonly BindableProperty IsDropDownOpenProperty
IsEditableProperty
BindableProperty
Identifies the IsEditable bindable property.
public static readonly BindableProperty IsEditableProperty
IsFilteringEnabledProperty
BindableProperty
Identifies the IsFilteringEnabled bindable property.
public static readonly BindableProperty IsFilteringEnabledProperty
IsSpellCheckEnabledProperty
BindableProperty
Identifies the IsSpellCheckEnabled property.
public static readonly BindableProperty IsSpellCheckEnabledProperty
ItemsSourceProperty
BindableProperty
Identifies the ItemsSource bindable property.
public static readonly BindableProperty ItemsSourceProperty
ItemTemplateProperty
BindableProperty
Identifies the ItemTemplate bindable property.
public static readonly BindableProperty ItemTemplateProperty
KeyboardProperty
BindableProperty
Identifies the Keyboard property.
public static readonly BindableProperty KeyboardProperty
KeyDownCommandProperty
BindableProperty
Identifies the KeyDownCommand property.
public static readonly BindableProperty KeyDownCommandProperty
NoResultsMessageProperty
BindableProperty
Identifies the NoResultsMessage property.
public static readonly BindableProperty NoResultsMessageProperty
NoResultsTemplateProperty
BindableProperty
Identifies the NoResultsTemplate property.
public static readonly BindableProperty NoResultsTemplateProperty
OpenOnFocusProperty
BindableProperty
Identifies the OpenOnFocus bindable property.
public static readonly BindableProperty OpenOnFocusProperty
PlaceholderColorProperty
BindableProperty
Identifies the PlaceholderColor property.
public static readonly BindableProperty PlaceholderColorProperty
PlaceholderProperty
BindableProperty
Identifies the Placeholder property.
public static readonly BindableProperty PlaceholderProperty
RemoveTokenCommandProperty
BindableProperty
Identifies the RemoveTokenCommand property.
public static readonly BindableProperty RemoveTokenCommandProperty
SearchModeProperty
BindableProperty
Identifies the SearchMode property.
public static readonly BindableProperty SearchModeProperty
SearchTextPathProperty
BindableProperty
Identifies the SearchTextPath property.
public static readonly BindableProperty SearchTextPathProperty
SelectedIndexProperty
BindableProperty
Identifies the SelectedIndex property.
public static readonly BindableProperty SelectedIndexProperty
SelectedItemProperty
BindableProperty
Identifies the SelectedItem property.
public static readonly BindableProperty SelectedItemProperty
SelectedItemsProperty
BindableProperty
Identifies the SelectedItems property.
public static readonly BindableProperty SelectedItemsProperty
SelectedItemTemplateProperty
BindableProperty
Identifies the SelectedItemTemplate bindable property.
public static readonly BindableProperty SelectedItemTemplateProperty
SelectionBoxTemplateProperty
BindableProperty
Identifies the SelectionBoxTemplate bindable property.
public static readonly BindableProperty SelectionBoxTemplateProperty
SelectionModeProperty
BindableProperty
Identifies the SelectionMode property.
public static readonly BindableProperty SelectionModeProperty
ShowMoreTemplateProperty
BindableProperty
Identifies the ShowMoreTemplate property.
public static readonly BindableProperty ShowMoreTemplateProperty
StyleProperty
BindableProperty
Identifies the Style bindable property.
public static readonly BindableProperty StyleProperty
TextColorProperty
BindableProperty
Identifies the TextColor property.
public static readonly BindableProperty TextColorProperty
TextInputStyleProperty
BindableProperty
Identifies the TextInputStyle property.
public static readonly BindableProperty TextInputStyleProperty
TextProperty
BindableProperty
Identifies the Text property.
public static readonly BindableProperty TextProperty
TokenTemplateProperty
BindableProperty
Identifies the TokenTemplate property.
public static readonly BindableProperty TokenTemplateProperty
Properties
Gets the actual style that is used to style the clear button.
public Style ActualClearButtonStyle { get; }
Gets the actual style that is used to style the dropdown button.
public Style ActualDropDownButtonStyle { get; }
ActualTextInputStyle
Style
Gets the actual style that is used to style the inner RadTextInput.
public Style ActualTextInputStyle { get; }
BackgroundColor
Color
public Color BackgroundColor { get; set; }
BorderBrush
Brush
Gets or sets the BorderBrush of the component.
[TypeConverter(typeof(BrushTypeConverter))]
public Brush BorderBrush { get; set; }
The Color.
ClearButtonStyle
Style
Gets or sets the Style of the clear button.
public Style ClearButtonStyle { get; set; }
Gets or sets the command that clears the current selection, setting SelectedItem to null and clearing SelectedItems. This command is typically bound to a clear button or used programmatically to reset the selection state.
public ICommand ClearSelectionCommand { get; set; }
ControlTemplate
ControlTemplate
Gets or sets the control template of this view.
public ControlTemplate ControlTemplate { get; set; }
Gets or sets the property path used to determine which property of the data object should be displayed in the dropdown items. Use "." to display the object itself, or specify a property name like "Name" or "Title" to display a specific property.
public string DisplayMemberPath { get; set; }
Gets or sets the background color of the drop down part of the control.
public Color DropDownBackgroundColor { get; set; }
DropDownBorderColor
Color
Gets or sets the color of the border around the drop down part of the control.
public Color DropDownBorderColor { get; set; }
DropDownBorderThickness
Thickness
Gets or sets the thickness of the border that is around the drop down part of the control.
public Thickness DropDownBorderThickness { get; set; }
DropDownButtonStyle
Style
Gets or sets the Style of the drop down button.
public Style DropDownButtonStyle { get; set; }
DropDownCornerRadius
Thickness
Gets or sets the corner radius of the border that is around the drop down part of the control.
public Thickness DropDownCornerRadius { get; set; }
Gets or sets the fixed height of the dropdown area in device-independent units. If not set or set to a negative value, the dropdown will size itself based on its content up to DropDownMaxHeight.
public double DropDownHeight { get; set; }
Gets or sets the maximum height of the dropdown area in device-independent units. This property constrains the dropdown height when it auto-sizes based on content, ensuring it doesn't exceed the specified limit.
public double DropDownMaxHeight { get; set; }
Gets or sets the vertical offset of the drop down part of the control.
public double DropDownVerticalOffset { get; set; }
Gets or sets the width of the dropdown area in device-independent units. If not set, the dropdown will match the width of the ComboBox control itself.
public double DropDownWidth { get; set; }
Gets the collection of items that match the current filter criteria when IsFilteringEnabled is true. This read-only collection is automatically updated as the user types and the filtering logic is applied.
public IReadOnlyCollection<object> FilteredItems { get; }
Gets or sets the custom filtering behavior used to filter items based on user input. This allows you to implement custom filtering logic beyond the built-in SearchMode options.
public ComboBoxFilteringBehavior FilteringBehavior { get; set; }
FontAttributes
FontAttributes
Gets or sets values that describe font styles.
public FontAttributes FontAttributes { get; set; }
Gets or sets the font family to which the font belongs.
public string FontFamily { get; set; }
Gets or sets the size of the font.
[TypeConverter(typeof(FontSizeConverter))]
public double FontSize { get; set; }
FooterTemplate
DataTemplate
Gets or sets the template used to display the footer content at the bottom of the dropdown list. This template is rendered below all dropdown items and can contain any content or controls.
public DataTemplate FooterTemplate { get; set; }
HeaderTemplate
DataTemplate
Gets or sets the template used to display the header content at the top of the dropdown list. This template is rendered above all dropdown items and can contain any content or controls.
public DataTemplate HeaderTemplate { get; set; }
HighlightTextColor
Color
Gets or sets the color used to highlight the matched text portions when filtering is active. This provides visual feedback to users showing which parts of the item text match their search input.
public Color HighlightTextColor { get; set; }
Gets or sets a value indicating if the clear button should be visible.
public bool IsClearButtonVisible { get; set; }
When False Clear button will never be visible. Otherwise it will be visible only when control is focused.
Gets or sets a value indicating whether the dropdown should automatically close when an item is selected or deselected. When false, the dropdown remains open after selection, allowing for easier multiple selection.
public bool IsDropDownClosedOnSelection { get; set; }
Gets or sets a value indicating whether the drop down part of the control is opened.
public bool IsDropDownOpen { get; set; }
Gets or sets a value indicating whether the ComboBox allows direct text input and editing. When true, users can type text directly into the control to search and filter items. When false, users can only select from the dropdown list.
public bool IsEditable { get; set; }
Gets or sets a value indicating whether filtering of dropdown items is enabled when the user types in the ComboBox. When true and IsEditable is also true, the dropdown list will be filtered based on user input.
public bool IsFilteringEnabled { get; set; }
Gets or sets a value that controls whether spell checking is enabled.
public bool IsSpellCheckEnabled { get; set; }
Gets or sets the collection of data items that populate the ComboBox dropdown list. This can be any object that implements IEnumerable, such as a list, array, or observable collection.
public IEnumerable ItemsSource { get; set; }
ItemTemplate
DataTemplate
Gets or sets the template used to display each item in the dropdown list. This template defines how individual data items are rendered when the dropdown is open.
public DataTemplate ItemTemplate { get; set; }
Keyboard
Keyboard
Gets or sets the keyboard type of the entry part of the control.
public Keyboard Keyboard { get; set; }
Gets or sets the command that is invoked when a key is pressed. The parameter of this command is of type KeyboardInfo.
public ICommand KeyDownCommand { get; set; }
Gets or sets the message text displayed when no items match the current filter criteria. This provides a simple text alternative to NoResultsTemplate for informing users about empty search results.
public string NoResultsMessage { get; set; }
NoResultsTemplate
DataTemplate
Gets or sets the template displayed when no items match the current filter criteria. This provides a customizable way to inform users that their search didn't return any results.
public DataTemplate NoResultsTemplate { get; set; }
Gets or sets a value indicating whether the dropdown should automatically open when the ComboBox receives focus. This property only applies when IsEditable is set to true.
public bool OpenOnFocus { get; set; }
Gets or sets the placeholder text displayed when the ComboBox is empty and not focused. This provides guidance to users about what they should enter or select.
public string Placeholder { get; set; }
PlaceholderColor
Color
Gets or sets the color of the placeholder text displayed when the ComboBox is empty. This allows customization of the placeholder text appearance to match your application's theme.
public Color PlaceholderColor { get; set; }
Gets or sets the command that removes individual selection tokens when SelectionMode is set to Multiple. This command is typically executed when users click the remove button on individual tokens. The parameter of this command is a selected business item, i.e. an item from the SelectedItems.
public ICommand RemoveTokenCommand { get; set; }
Gets or sets the search criteria mode used when filtering items in the dropdown. This determines how the user's input text is matched against the items (starts with, contains, case-sensitive options).
public SearchMode SearchMode { get; set; }
Gets the current search text entered by the user when IsEditable is true. This property reflects the text used for filtering and searching within the dropdown items.
[Browsable(false)]
public string SearchText { get; }
Gets or sets the property path used to determine which property of the data object should be used for searching and filtering. Use "." to search against the object itself, or specify a property name like "Name" to search against a specific property.
public string SearchTextPath { get; set; }
Gets the command that selects all available items from the ItemsSource when SelectionMode is set to Multiple. This read-only command is automatically created and can be used to provide "select all" functionality.
public ICommand SelectAllCommand { get; }
Gets or sets the zero-based index of the currently selected item in the ItemsSource. When SelectionMode is Single, this represents the selected item's index. When Multiple, this represents the first selected item's index or -1 if no items are selected.
public int SelectedIndex { get; set; }
Gets or sets the currently selected item from the ItemsSource. When SelectionMode is Single, this represents the selected item. When Multiple, this represents the first selected item or null if no items are selected.
public object SelectedItem { get; set; }
Gets the collection of all currently selected items from the ItemsSource. This collection is automatically maintained and reflects the current selection state. It's particularly useful when SelectionMode is set to Multiple.
public ObservableCollection<object> SelectedItems { get; }
SelectedItemTemplate
DataTemplate
Gets or sets the template used to display selected items when they appear in the dropdown list. This template is typically used to provide visual indication that an item is selected, often through different styling or checkmarks.
public DataTemplate SelectedItemTemplate { get; set; }
SelectionBoxTemplate
DataTemplate
Gets or sets the template used to display the selected item in the selection box when the ComboBox is not editable. This template is only used when IsEditable is set to false and defines how the selected item appears in the collapsed state.
public DataTemplate SelectionBoxTemplate { get; set; }
Gets or sets the selection mode that determines how users can select items from the dropdown. Use Single for single-item selection or Multiple to allow selection of multiple items with tokens.
public ComboBoxSelectionMode SelectionMode { get; set; }
ShowMoreTemplate
DataTemplate
Gets or sets the template used to display the "show more" indicator when there are more selected tokens than can be displayed in the available space. This template appears when multiple items are selected and the ComboBox is not focused, providing a way to indicate additional selections.
public DataTemplate ShowMoreTemplate { get; set; }
Gets or sets the text content displayed in the ComboBox. When IsEditable is true, this represents the user-entered text. When false, this displays the text representation of the selected item.
public string Text { get; set; }
TextColor
Color
Gets or sets the TextColor of the component.
public Color TextColor { get; set; }
The Color.
TextInputStyle
Style
Gets or sets the style of the inner RadTextInput.
public Style TextInputStyle { get; set; }
TokenTemplate
DataTemplate
Gets or sets the template used to display individual selection tokens when SelectionMode is set to Multiple. Each selected item is represented as a token that can be styled and customized through this template.
public DataTemplate TokenTemplate { get; set; }
Methods
Called when the control template is applied.
protected override void OnApplyTemplate()
Called when the handler for this view is changed.
protected override void OnHandlerChanged()
Overrides:
Called when a property value changes.
protected override void OnPropertyChanged(string propertyName = null)
The name of the property that changed.
Unsets keyboard focus on this element.
public void Unfocus()
Events
Occurs when the user completes text entry by pressing the Enter key or the Done button on the keyboard. This event is typically used to trigger actions when the user finishes input in editable mode.
public event EventHandler Completed
Occurs when the selection state changes, providing information about items that were added to or removed from the selection. This event is raised for both single and multiple selection scenarios.
public event EventHandler<ComboBoxSelectionChangedEventArgs> SelectionChanged