Implementing .NET MAUI ComboBox
The Syncfusion .NET MAUI ComboBox (SfComboBox) is a powerful selection control that allows users to type a value or choose an option from a list of predefined options. It combines the functionality of a dropdown list with an editable text box, supporting data binding, filtering, searching, single/multiple selection, and extensive customization options.
When to Use This Skill
Use this skill when the user needs to:
- Implement dropdown selection controls with editable or non-editable text input
- Enable searchable dropdowns with filtering and auto-complete functionality
- Support multiple selection modes with token or delimiter display
- Bind data from collections to dropdown lists with custom display formatting
- Apply custom filtering logic including AI-powered smart search
- Customize dropdown UI with headers, footers, item templates, and styling
- Highlight matched text during search operations
- Implement load-more functionality for large datasets
- Create accessible selection controls with proper automation support
Component Overview
Key Capabilities:
- Editable & Non-Editable Modes: Toggle between allowing free text input or dropdown-only selection
- Single & Multiple Selection: Support for single item or multi-item selection with token/delimiter display
- Filtering & Searching: Built-in text filtering with StartsWith/Contains modes and custom filter logic
- Data Binding: Bind to any IEnumerable source with DisplayMemberPath and TextMemberPath
- UI Customization: Extensive styling options for dropdown, items, tokens, headers, footers
- Smart Features: AI-powered search, text highlighting, load-more, auto-sizing
- Events & Methods: Rich event model for selection changes, dropdown state, and user interactions
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- Installation and NuGet package setup (Syncfusion.Maui.Inputs)
- Registering Syncfusion Core handler (ConfigureSyncfusionCore)
- Basic ComboBox implementation in XAML and C#
- Data binding with ItemsSource, DisplayMemberPath, TextMemberPath
- Minimal working example
Editing Modes
📄 Read: references/editing-modes.md
- IsEditable property for editable/non-editable modes
- IsClearButtonVisible for clear button control
- Text property for getting/setting input text
- CursorPosition management
Selection
📄 Read: references/selection.md
- Single selection (SelectedItem, SelectedIndex)
- Multiple selection (SelectionMode, SelectedItems)
- Multi-selection display modes (Token, Delimiter)
- TokensWrapMode (Wrap, None)
- SelectedValue and SelectedValuePath
- SelectionChanging and SelectionChanged events
- Programmatic selection and Clear method
Filtering
📄 Read: references/filtering.md
- Enable filtering with IsFilteringEnabled
- Filter modes (StartsWith, Contains)
- Custom filtering with IComboBoxFilterBehavior
- Implementing GetMatchingIndexes for custom filter logic
- MinimumPrefixCharacters constraint
Searching
📄 Read: references/searching.md
- TextSearchMode configuration (StartsWith, Contains)
- Search based on DisplayMemberPath and TextMemberPath
- Edit mode searching behavior
- Prefix characters constraint (MinimumPrefixCharacters)
UI Customization
📄 Read: references/ui-customization.md
- Placeholder and colors
- Clear button and dropdown icon customization
- Border styling (Stroke, ShowBorder)
- MaxDropDownHeight configuration
- ItemTemplate and DataTemplateSelector for custom item rendering
- Dropdown styling (Background, Stroke, StrokeThickness, CornerRadius, Shadow)
- Dropdown item styling (Font, Color, Height, Padding)
- DropDownPlacement (Top, Bottom, Auto, None)
- DropDownButtonSettings customization
- Token item styling
- Text alignment and cursor position
- ReturnType for keyboard behavior
- ShowSuggestionsOnFocus
- AutomationId support for UI testing
Header and Footer
📄 Read: references/header-footer.md
- Adding header view with ShowDropDownHeaderView
- Adding footer view with ShowDropDownFooterView
- Custom templates for headers and footers
- Height configuration
Text Highlighting
📄 Read: references/highlighting-text.md
- TextHighlightMode (FirstOccurrence, MultipleOccurrence)
- Customizing highlight color and font attributes
- Highlighting in StartsWith and Contains modes
Advanced Features
📄 Read: references/advanced-features.md
- AutoSizing with EnableAutoSize
- NoResultsFoundText and NoResultsFoundTemplate
- Load-more functionality (MaximumSuggestion, LoadMoreText, LoadMoreTemplate)
- IsDropDownOpen for programmatic control
- ReturnCommand and ReturnCommandParameter
- Liquid Glass Effect (EnableLiquidGlassEffect)
Events and Methods
📄 Read: references/events-and-methods.md
- SelectionChanging event (with Cancel option)
- SelectionChanged event (AddedItems, RemovedItems)
- ValueChanged event (OldValue, NewValue)
- Completed event
- DropDownOpening, DropDownOpened, DropDownClosed events
- ClearButtonClicked event
- LoadMoreButtonTapped event
- Clear() method
AI-Powered Smart Searching
📄 Read: references/ai-smart-searching.md
- Integrating Azure OpenAI for intelligent search
- Implementing IComboBoxFilterBehavior for AI filtering
- Prompt engineering for accurate results
- Async filtering with CancellationToken
- Fallback mechanisms (Soundex, Levenshtein algorithms)
1---2name: syncfusion-maui-combobox3description: Implements Syncfusion .NET MAUI ComboBox (SfComboBox) control. Use when working with ComboBox, dropdown selection, editable dropdown, searchable dropdown, or filterable dropdown in .NET MAUI. Covers basic ComboBox setup, editable/non-editable modes, single/multiple selection, filtering and searching, custom UI styling, and AI-powered smart search.4---5
6# Implementing .NET MAUI ComboBox
7
8The Syncfusion .NET MAUI ComboBox (SfComboBox) is a powerful selection control that allows users to type a value or choose an option from a list of predefined options. It combines the functionality of a dropdown list with an editable text box, supporting data binding, filtering, searching, single/multiple selection, and extensive customization options.
9
10## When to Use This Skill
11
12Use this skill when the user needs to:
13
14- **Implement dropdown selection controls** with editable or non-editable text input
15- **Enable searchable dropdowns** with filtering and auto-complete functionality
16- **Support multiple selection modes** with token or delimiter display
17- **Bind data from collections** to dropdown lists with custom display formatting
18- **Apply custom filtering logic** including AI-powered smart search
19- **Customize dropdown UI** with headers, footers, item templates, and styling
20- **Highlight matched text** during search operations
21- **Implement load-more functionality** for large datasets
22- **Create accessible selection controls** with proper automation support
23
24## Component Overview
25
26**Key Capabilities:**
27- **Editable & Non-Editable Modes:** Toggle between allowing free text input or dropdown-only selection
28- **Single & Multiple Selection:** Support for single item or multi-item selection with token/delimiter display
29- **Filtering & Searching:** Built-in text filtering with StartsWith/Contains modes and custom filter logic
30- **Data Binding:** Bind to any IEnumerable source with DisplayMemberPath and TextMemberPath
31- **UI Customization:** Extensive styling options for dropdown, items, tokens, headers, footers
32- **Smart Features:** AI-powered search, text highlighting, load-more, auto-sizing
33- **Events & Methods:** Rich event model for selection changes, dropdown state, and user interactions
34
35## Documentation and Navigation Guide
36
37### Getting Started
38📄 **Read:** [references/getting-started.md](references/getting-started.md)
39- Installation and NuGet package setup (Syncfusion.Maui.Inputs)
40- Registering Syncfusion Core handler (ConfigureSyncfusionCore)
41- Basic ComboBox implementation in XAML and C#
42- Data binding with ItemsSource, DisplayMemberPath, TextMemberPath
43- Minimal working example
44
45### Editing Modes
46📄 **Read:** [references/editing-modes.md](references/editing-modes.md)
47- IsEditable property for editable/non-editable modes
48- IsClearButtonVisible for clear button control
49- Text property for getting/setting input text
50- CursorPosition management
51
52### Selection
53📄 **Read:** [references/selection.md](references/selection.md)
54- Single selection (SelectedItem, SelectedIndex)
55- Multiple selection (SelectionMode, SelectedItems)
56- Multi-selection display modes (Token, Delimiter)
57- TokensWrapMode (Wrap, None)
58- SelectedValue and SelectedValuePath
59- SelectionChanging and SelectionChanged events
60- Programmatic selection and Clear method
61
62### Filtering
63📄 **Read:** [references/filtering.md](references/filtering.md)
64- Enable filtering with IsFilteringEnabled
65- Filter modes (StartsWith, Contains)
66- Custom filtering with IComboBoxFilterBehavior
67- Implementing GetMatchingIndexes for custom filter logic
68- MinimumPrefixCharacters constraint
69
70### Searching
71📄 **Read:** [references/searching.md](references/searching.md)
72- TextSearchMode configuration (StartsWith, Contains)
73- Search based on DisplayMemberPath and TextMemberPath
74- Edit mode searching behavior
75- Prefix characters constraint (MinimumPrefixCharacters)
76
77### UI Customization
78📄 **Read:** [references/ui-customization.md](references/ui-customization.md)
79- Placeholder and colors
80- Clear button and dropdown icon customization
81- Border styling (Stroke, ShowBorder)
82- MaxDropDownHeight configuration
83- ItemTemplate and DataTemplateSelector for custom item rendering
84- Dropdown styling (Background, Stroke, StrokeThickness, CornerRadius, Shadow)
85- Dropdown item styling (Font, Color, Height, Padding)
86- DropDownPlacement (Top, Bottom, Auto, None)
87- DropDownButtonSettings customization
88- Token item styling
89- Text alignment and cursor position
90- ReturnType for keyboard behavior
91- ShowSuggestionsOnFocus
92- AutomationId support for UI testing
93
94### Header and Footer
95📄 **Read:** [references/header-footer.md](references/header-footer.md)
96- Adding header view with ShowDropDownHeaderView
97- Adding footer view with ShowDropDownFooterView
98- Custom templates for headers and footers
99- Height configuration
100
101### Text Highlighting
102📄 **Read:** [references/highlighting-text.md](references/highlighting-text.md)
103- TextHighlightMode (FirstOccurrence, MultipleOccurrence)
104- Customizing highlight color and font attributes
105- Highlighting in StartsWith and Contains modes
106
107### Advanced Features
108📄 **Read:** [references/advanced-features.md](references/advanced-features.md)
109- AutoSizing with EnableAutoSize
110- NoResultsFoundText and NoResultsFoundTemplate
111- Load-more functionality (MaximumSuggestion, LoadMoreText, LoadMoreTemplate)
112- IsDropDownOpen for programmatic control
113- ReturnCommand and ReturnCommandParameter
114- Liquid Glass Effect (EnableLiquidGlassEffect)
115
116### Events and Methods
117📄 **Read:** [references/events-and-methods.md](references/events-and-methods.md)
118- SelectionChanging event (with Cancel option)
119- SelectionChanged event (AddedItems, RemovedItems)
120- ValueChanged event (OldValue, NewValue)
121- Completed event
122- DropDownOpening, DropDownOpened, DropDownClosed events
123- ClearButtonClicked event
124- LoadMoreButtonTapped event
125- Clear() method
126
127### AI-Powered Smart Searching
128📄 **Read:** [references/ai-smart-searching.md](references/ai-smart-searching.md)
129- Integrating Azure OpenAI for intelligent search
130- Implementing IComboBoxFilterBehavior for AI filtering
131- Prompt engineering for accurate results
132- Async filtering with CancellationToken
133- Fallback mechanisms (Soundex, Levenshtein algorithms)
134