Implementing .NET MAUI Picker (SfPicker)
The Syncfusion .NET MAUI Picker (SfPicker) control allows users to select items from a customizable picker interface with support for multiple columns, different display modes, and extensive customization options. It's ideal for implementing date pickers, time pickers, color pickers, country pickers, and any scenario requiring item selection from a scrollable list.
When to Use This Skill
Use this skill when you need to:
- Implement item selection interfaces in .NET MAUI applications using Syncfusion Picker
- Create custom pickers such as date pickers, time pickers, color pickers, or country pickers
- Display picker controls in Default, Dialog, or RelativeDialog modes
- Configure multi-column pickers for complex data selection scenarios
- Customize picker appearance including headers, footers, selection views, and column headers
- Bind data to picker columns using ItemsSource and ObservableCollection
- Handle picker events such as SelectionChanged, OkButtonClicked, or CancelButtonClicked
- Implement accessibility features for picker controls
- Localize picker content for multi-language support
- Apply advanced features like looping, item templates, or liquid glass effects
Component Overview
The .NET MAUI Picker (SfPicker) provides:
- Multiple display modes: Default (inline), Dialog (popup), and RelativeDialog (positioned popup)
- Multi-column support: Display multiple columns with independent data sources
- Customizable views: Header, footer, selection view, and column headers
- Rich data binding: Support for simple collections and complex objects
- Event-driven architecture: Events and commands for user interactions
- Accessibility support: WCAG compliance and screen reader compatibility
- Localization: Multi-language and culture-specific formatting
- Advanced customization: Item templates, styling, and visual effects
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
When the user needs to:
- Install and set up the Syncfusion .NET MAUI Picker
- Add the NuGet package (Syncfusion.Maui.Picker)
- Register the Syncfusion handler (ConfigureSyncfusionCore)
- Create a basic picker implementation in XAML or C#
- Set initial height and width properties
Picker Modes and Display
📄 Read: references/picker-modes.md
When the user needs to:
- Choose between Default, Dialog, or RelativeDialog modes
- Display picker as a popup dialog
- Position picker relative to specific UI elements
- Configure RelativePosition options (AlignTop, AlignTopLeft, AlignBottomRight, etc.)
- Set RelativeView for custom positioning
- Control popup size with PopupWidth and PopupHeight
- Programmatically open/close picker using IsOpen property
Column Configuration
📄 Read: references/columns.md
When the user needs to:
- Add single or multiple columns to the picker
- Use DisplayMemberPath for displaying specific object properties
- Customize column width
- Set SelectedIndex and SelectedItem properties
- Bind ItemsSource to data collections
- Configure column divider color for multi-column pickers
- Manage dynamic column addition and removal
Header, Footer, and Selection Views
📄 Read: references/header-footer-selection.md
When the user needs to:
- Add and customize header view (PickerHeaderView)
- Set header text and height
- Configure footer view with OK and Cancel buttons
- Enable/disable ShowOkButton property
- Customize footer button text (OkButtonText, CancelButtonText)
- Style selection view appearance
- Use IsSelectionImmediate for instant selection updates
Column Headers
📄 Read: references/column-headers.md
When the user needs to:
- Add column header view (PickerColumnHeaderView)
- Set HeaderText property for individual columns
- Configure column header height
- Customize column header styling
- Implement multi-column header layouts
Populating Items and Data Binding
📄 Read: references/populating-items.md
When the user needs to:
- Bind ItemsSource to ObservableCollection
- Create and populate data sources
- Configure binding context in XAML and C#
- Bind complex objects with custom properties
- Handle dynamic data updates and refreshes
- Implement MVVM data binding patterns
Events and Commands
📄 Read: references/events-commands.md
When the user needs to:
- Handle Opened, Closing, and Closed events
- Respond to SelectionChanged events
- Process OkButtonClicked and CancelButtonClicked events
- Use SelectionChangedCommand with MVVM
- Implement AcceptCommand and DeclineCommand
- Access event arguments and parameters
- Cancel picker closing with Closing event
Customization and Styling
📄 Read: references/customization.md
When the user needs to:
- Apply item templates for custom item appearance
- Customize visual styling (colors, fonts, backgrounds)
- Configure text styles and formatting
- Implement visual states
- Apply custom themes and styles
Accessibility
📄 Read: references/accessibility.md
When the user needs to:
- Ensure WCAG compliance
- Implement keyboard navigation support
- Configure screen reader compatibility
- Add ARIA attributes for accessibility
- Manage focus behavior
- Follow accessibility best practices
Localization
📄 Read: references/localization.md
When the user needs to:
- Implement multi-language support
- Set up resource files for localization
- Configure culture-specific formatting
- Handle right-to-left (RTL) languages
Advanced Features
📄 Read: references/advanced-features.md
When the user needs to:
- Enable looping (circular scrolling)
- Configure picker text display modes
- Implement data template selectors
- Apply liquid glass effects
- Optimize picker performance
- Handle complex custom scenarios
- Troubleshoot edge cases
1---
2name: syncfusion-maui-picker
3description: Implements Syncfusion .NET MAUI Picker (SfPicker) control. Use when working with picker controls, item pickers, selection pickers, multi-column pickers, or dialog pickers in .NET MAUI applications. This skill covers installation, configuration, modes (Default, Dialog, RelativeDialog), header/footer customization, column handling, data binding, events, and accessibility.
4metadata:
5 author: "Syncfusion Inc"
6 version: "34.1.29"
7---
8
9# Implementing .NET MAUI Picker (SfPicker)
10
11The Syncfusion .NET MAUI Picker (SfPicker) control allows users to select items from a customizable picker interface with support for multiple columns, different display modes, and extensive customization options. It's ideal for implementing date pickers, time pickers, color pickers, country pickers, and any scenario requiring item selection from a scrollable list.
12
13## When to Use This Skill
14
15Use this skill when you need to:
16
17- **Implement item selection interfaces** in .NET MAUI applications using Syncfusion Picker
18- **Create custom pickers** such as date pickers, time pickers, color pickers, or country pickers
19- **Display picker controls** in Default, Dialog, or RelativeDialog modes
20- **Configure multi-column pickers** for complex data selection scenarios
21- **Customize picker appearance** including headers, footers, selection views, and column headers
22- **Bind data** to picker columns using ItemsSource and ObservableCollection
23- **Handle picker events** such as SelectionChanged, OkButtonClicked, or CancelButtonClicked
24- **Implement accessibility features** for picker controls
25- **Localize picker content** for multi-language support
26- **Apply advanced features** like looping, item templates, or liquid glass effects
27
28## Component Overview
29
30The .NET MAUI Picker (SfPicker) provides:
31
32- **Multiple display modes**: Default (inline), Dialog (popup), and RelativeDialog (positioned popup)
33- **Multi-column support**: Display multiple columns with independent data sources
34- **Customizable views**: Header, footer, selection view, and column headers
35- **Rich data binding**: Support for simple collections and complex objects
36- **Event-driven architecture**: Events and commands for user interactions
37- **Accessibility support**: WCAG compliance and screen reader compatibility
38- **Localization**: Multi-language and culture-specific formatting
39- **Advanced customization**: Item templates, styling, and visual effects
40
41## Documentation and Navigation Guide
42
43### Getting Started
44📄 **Read:** [references/getting-started.md](references/getting-started.md)
45
46When the user needs to:
47- Install and set up the Syncfusion .NET MAUI Picker
48- Add the NuGet package (Syncfusion.Maui.Picker)
49- Register the Syncfusion handler (ConfigureSyncfusionCore)
50- Create a basic picker implementation in XAML or C#
51- Set initial height and width properties
52
53### Picker Modes and Display
54📄 **Read:** [references/picker-modes.md](references/picker-modes.md)
55
56When the user needs to:
57- Choose between Default, Dialog, or RelativeDialog modes
58- Display picker as a popup dialog
59- Position picker relative to specific UI elements
60- Configure RelativePosition options (AlignTop, AlignTopLeft, AlignBottomRight, etc.)
61- Set RelativeView for custom positioning
62- Control popup size with PopupWidth and PopupHeight
63- Programmatically open/close picker using IsOpen property
64
65### Column Configuration
66📄 **Read:** [references/columns.md](references/columns.md)
67
68When the user needs to:
69- Add single or multiple columns to the picker
70- Use DisplayMemberPath for displaying specific object properties
71- Customize column width
72- Set SelectedIndex and SelectedItem properties
73- Bind ItemsSource to data collections
74- Configure column divider color for multi-column pickers
75- Manage dynamic column addition and removal
76
77### Header, Footer, and Selection Views
78📄 **Read:** [references/header-footer-selection.md](references/header-footer-selection.md)
79
80When the user needs to:
81- Add and customize header view (PickerHeaderView)
82- Set header text and height
83- Configure footer view with OK and Cancel buttons
84- Enable/disable ShowOkButton property
85- Customize footer button text (OkButtonText, CancelButtonText)
86- Style selection view appearance
87- Use IsSelectionImmediate for instant selection updates
88
89### Column Headers
90📄 **Read:** [references/column-headers.md](references/column-headers.md)
91
92When the user needs to:
93- Add column header view (PickerColumnHeaderView)
94- Set HeaderText property for individual columns
95- Configure column header height
96- Customize column header styling
97- Implement multi-column header layouts
98
99### Populating Items and Data Binding
100📄 **Read:** [references/populating-items.md](references/populating-items.md)
101
102When the user needs to:
103- Bind ItemsSource to ObservableCollection
104- Create and populate data sources
105- Configure binding context in XAML and C#
106- Bind complex objects with custom properties
107- Handle dynamic data updates and refreshes
108- Implement MVVM data binding patterns
109
110### Events and Commands
111📄 **Read:** [references/events-commands.md](references/events-commands.md)
112
113When the user needs to:
114- Handle Opened, Closing, and Closed events
115- Respond to SelectionChanged events
116- Process OkButtonClicked and CancelButtonClicked events
117- Use SelectionChangedCommand with MVVM
118- Implement AcceptCommand and DeclineCommand
119- Access event arguments and parameters
120- Cancel picker closing with Closing event
121
122### Customization and Styling
123📄 **Read:** [references/customization.md](references/customization.md)
124
125When the user needs to:
126- Apply item templates for custom item appearance
127- Customize visual styling (colors, fonts, backgrounds)
128- Configure text styles and formatting
129- Implement visual states
130- Apply custom themes and styles
131
132### Accessibility
133📄 **Read:** [references/accessibility.md](references/accessibility.md)
134
135When the user needs to:
136- Ensure WCAG compliance
137- Implement keyboard navigation support
138- Configure screen reader compatibility
139- Add ARIA attributes for accessibility
140- Manage focus behavior
141- Follow accessibility best practices
142
143### Localization
144📄 **Read:** [references/localization.md](references/localization.md)
145
146When the user needs to:
147- Implement multi-language support
148- Set up resource files for localization
149- Configure culture-specific formatting
150- Handle right-to-left (RTL) languages
151
152### Advanced Features
153📄 **Read:** [references/advanced-features.md](references/advanced-features.md)
154
155When the user needs to:
156- Enable looping (circular scrolling)
157- Configure picker text display modes
158- Implement data template selectors
159- Apply liquid glass effects
160- Optimize picker performance
161- Handle complex custom scenarios
162- Troubleshoot edge cases
163