Implementing Syncfusion .NET MAUI TimePicker
The Syncfusion .NET MAUI TimePicker (SfTimePicker) is a powerful control that allows users to select time values through an intuitive scrollable interface. It supports multiple time formats, customizable intervals, dialog modes, time restrictions, and extensive styling options.
When to Use This Skill
Use this skill when you need to:
- Implement time selection in .NET MAUI applications
- Add SfTimePicker controls to XAML or C# code
- Configure time formats (12/24 hour, with/without seconds, milliseconds)
- Set up dialog or positioned picker modes
- Define hour/minute/second intervals for time selection
- Restrict selectable times (business hours, appointment slots, blocked times)
- Handle time selection events or use MVVM commands
- Customize picker appearance (header, footer, selection view, text display)
- Implement accessible or localized time pickers
- Troubleshoot TimePicker configuration or behavior issues
Component Overview
The SfTimePicker provides:
- 14 predefined time formats supporting 12/24-hour formats with hours, minutes, seconds, and milliseconds
- Three picker modes: Default (inline), Dialog (popup), and RelativeDialog (positioned popup)
- Time intervals for hours, minutes, seconds, and milliseconds
- Time restrictions including minimum/maximum time and blackout times
- Looping support for seamless navigation between first and last items
- Rich event system with selection changes, dialog lifecycle, and footer button events
- MVVM support through commands (SelectionChangedCommand, AcceptCommand, DeclineCommand)
- Extensive customization for header, footer, column headers, selection view, and text display modes
- Accessibility and localization support for global applications
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
When to read: Setting up TimePicker for the first time, installation, basic implementation.
Coverage:
- NuGet package installation (Syncfusion.Maui.Picker)
- Handler registration (ConfigureSyncfusionCore in MauiProgram.cs)
- Basic SfTimePicker initialization (XAML and C#)
- Setting header and footer views
- Configuring height and width
- Using SelectedTime property
- Clear selection support
Time Formatting
📄 Read: references/formatting.md
When to read: Configuring how time is displayed (12/24 hour, including/excluding seconds, milliseconds).
Coverage:
- Format property overview
- 14 predefined time formats:
H_mm, H_mm_ss (24-hour without leading zero)
HH_mm, HH_mm_ss, HH_mm_ss_fff (24-hour with leading zero)
h_mm_tt, h_mm_ss_tt (12-hour without leading zero + AM/PM)
hh_mm_tt, hh_mm_ss_tt, hh_mm_ss_fff_tt, hh_tt (12-hour with leading zero + AM/PM)
mm_ss, mm_ss_fff, ss_fff (minute/second combinations)
Default (culture-based format)
- Format usage examples and switching between formats
Picker Modes and Display
📄 Read: references/picker-modes.md
When to read: Configuring how the picker is displayed (inline, popup dialog, positioned dialog).
Coverage:
- Mode property (Default, Dialog, RelativeDialog)
- Dialog mode configuration
- IsOpen property for programmatic picker control
- RelativeDialog mode for positioned popups
- RelativePosition options (8 alignment positions):
- AlignTop, AlignBottom, AlignToLeftOf, AlignToRightOf
- AlignTopLeft, AlignTopRight, AlignBottomLeft, AlignBottomRight
- RelativeView property for positioning relative to specific controls
- Custom popup size (PopupWidth, PopupHeight properties)
- Code examples for each mode
Time Intervals and Looping
📄 Read: references/time-intervals-looping.md
When to read: Setting intervals between time values or enabling continuous looping.
Coverage:
- HourInterval property (e.g., show every 2 hours)
- MinuteInterval property (e.g., show every 5, 10, 15 minutes)
- SecondInterval property (e.g., show every 10 seconds)
- MilliSecondInterval property for precise time selection
- EnableLooping property for seamless first ↔ last item navigation
- Combining intervals with different time formats
- Practical scenarios (appointment booking, time tracking)
Time Restrictions
📄 Read: references/time-restrictions.md
When to read: Limiting selectable times (business hours, min/max ranges, blocked times).
Coverage:
- MinimumTime property to set earliest selectable time
- MaximumTime property to set latest selectable time
- BlackoutTimes collection to disable specific times
- Time range validation rules
- Use cases (business hours: 9 AM - 5 PM, appointment slots, blocked lunch hours)
- Combining restrictions with formats and intervals
Events and Commands
📄 Read: references/events-commands.md
When to read: Handling time selection changes, dialog lifecycle, or using MVVM commands.
Coverage:
- SelectionChanged event
- TimePickerSelectionChangedEventArgs with NewValue and OldValue
- IsSelectionImmediate behavior (immediate vs deferred selection)
- Dialog mode events:
- Opened event (when picker opens)
- Closing event with CancelEventArgs (can cancel closing)
- Closed event (after picker closes)
- Footer view events:
- OkButtonClicked event
- CancelButtonClicked event
- MVVM Commands:
- SelectionChangedCommand
- AcceptCommand (OK button)
- DeclineCommand (Cancel button)
- Event usage patterns and best practices
Customization and Styling
📄 Read: references/customization.md
When to read: Customizing picker appearance (colors, fonts, header/footer, visual effects).
Coverage:
- Header view customization
- Text, Height, Background, TextStyle properties
- Footer view customization
- OkButtonText, CancelButtonText
- ShowOkButton, Height, Background, TextStyle
- Column header view customization
- Text, Height, TextStyle per column
- Selection view customization
- Background, Stroke, StrokeThickness, CornerRadius, TextStyle
- TextDisplayMode options:
- Default, Fade, Shrink, FadeAndShrink
- Liquid glass effect for modern UI
- Item text styling
- Complete customization examples
Accessibility and Localization
📄 Read: references/accessibility-localization.md
When to read: Implementing accessible controls or supporting multiple languages/cultures.
Coverage:
- WCAG compliance features
- Screen reader support
- Keyboard navigation
- Semantic properties for accessibility
- Localization configuration
- Culture-specific time formatting
- RTL (right-to-left) language support
- Multi-language implementation examples
1---
2name: syncfusion-maui-time-picker
3description: Implements Syncfusion .NET MAUI TimePicker (SfTimePicker) control. Use when implementing time selection, time picker controls, or time input UI in .NET MAUI. This skill covers installation, configuration, time formats (14 predefined formats), picker modes (Dialog/RelativeDialog), intervals, time restrictions, looping, events, and customization.
4metadata:
5 author: "Syncfusion Inc"
6 version: "34.1.29"
7---
8
9# Implementing Syncfusion .NET MAUI TimePicker
10
11The Syncfusion .NET MAUI TimePicker (SfTimePicker) is a powerful control that allows users to select time values through an intuitive scrollable interface. It supports multiple time formats, customizable intervals, dialog modes, time restrictions, and extensive styling options.
12
13## When to Use This Skill
14
15Use this skill when you need to:
16- Implement time selection in .NET MAUI applications
17- Add SfTimePicker controls to XAML or C# code
18- Configure time formats (12/24 hour, with/without seconds, milliseconds)
19- Set up dialog or positioned picker modes
20- Define hour/minute/second intervals for time selection
21- Restrict selectable times (business hours, appointment slots, blocked times)
22- Handle time selection events or use MVVM commands
23- Customize picker appearance (header, footer, selection view, text display)
24- Implement accessible or localized time pickers
25- Troubleshoot TimePicker configuration or behavior issues
26
27## Component Overview
28
29The SfTimePicker provides:
30- **14 predefined time formats** supporting 12/24-hour formats with hours, minutes, seconds, and milliseconds
31- **Three picker modes**: Default (inline), Dialog (popup), and RelativeDialog (positioned popup)
32- **Time intervals** for hours, minutes, seconds, and milliseconds
33- **Time restrictions** including minimum/maximum time and blackout times
34- **Looping support** for seamless navigation between first and last items
35- **Rich event system** with selection changes, dialog lifecycle, and footer button events
36- **MVVM support** through commands (SelectionChangedCommand, AcceptCommand, DeclineCommand)
37- **Extensive customization** for header, footer, column headers, selection view, and text display modes
38- **Accessibility** and localization support for global applications
39
40## Documentation and Navigation Guide
41
42### Getting Started
43📄 **Read:** [references/getting-started.md](references/getting-started.md)
44
45**When to read:** Setting up TimePicker for the first time, installation, basic implementation.
46
47**Coverage:**
48- NuGet package installation (Syncfusion.Maui.Picker)
49- Handler registration (ConfigureSyncfusionCore in MauiProgram.cs)
50- Basic SfTimePicker initialization (XAML and C#)
51- Setting header and footer views
52- Configuring height and width
53- Using SelectedTime property
54- Clear selection support
55
56### Time Formatting
57📄 **Read:** [references/formatting.md](references/formatting.md)
58
59**When to read:** Configuring how time is displayed (12/24 hour, including/excluding seconds, milliseconds).
60
61**Coverage:**
62- Format property overview
63- 14 predefined time formats:
64 - `H_mm`, `H_mm_ss` (24-hour without leading zero)
65 - `HH_mm`, `HH_mm_ss`, `HH_mm_ss_fff` (24-hour with leading zero)
66 - `h_mm_tt`, `h_mm_ss_tt` (12-hour without leading zero + AM/PM)
67 - `hh_mm_tt`, `hh_mm_ss_tt`, `hh_mm_ss_fff_tt`, `hh_tt` (12-hour with leading zero + AM/PM)
68 - `mm_ss`, `mm_ss_fff`, `ss_fff` (minute/second combinations)
69 - `Default` (culture-based format)
70- Format usage examples and switching between formats
71
72### Picker Modes and Display
73📄 **Read:** [references/picker-modes.md](references/picker-modes.md)
74
75**When to read:** Configuring how the picker is displayed (inline, popup dialog, positioned dialog).
76
77**Coverage:**
78- Mode property (Default, Dialog, RelativeDialog)
79- Dialog mode configuration
80- IsOpen property for programmatic picker control
81- RelativeDialog mode for positioned popups
82- RelativePosition options (8 alignment positions):
83 - AlignTop, AlignBottom, AlignToLeftOf, AlignToRightOf
84 - AlignTopLeft, AlignTopRight, AlignBottomLeft, AlignBottomRight
85- RelativeView property for positioning relative to specific controls
86- Custom popup size (PopupWidth, PopupHeight properties)
87- Code examples for each mode
88
89### Time Intervals and Looping
90📄 **Read:** [references/time-intervals-looping.md](references/time-intervals-looping.md)
91
92**When to read:** Setting intervals between time values or enabling continuous looping.
93
94**Coverage:**
95- HourInterval property (e.g., show every 2 hours)
96- MinuteInterval property (e.g., show every 5, 10, 15 minutes)
97- SecondInterval property (e.g., show every 10 seconds)
98- MilliSecondInterval property for precise time selection
99- EnableLooping property for seamless first ↔ last item navigation
100- Combining intervals with different time formats
101- Practical scenarios (appointment booking, time tracking)
102
103### Time Restrictions
104📄 **Read:** [references/time-restrictions.md](references/time-restrictions.md)
105
106**When to read:** Limiting selectable times (business hours, min/max ranges, blocked times).
107
108**Coverage:**
109- MinimumTime property to set earliest selectable time
110- MaximumTime property to set latest selectable time
111- BlackoutTimes collection to disable specific times
112- Time range validation rules
113- Use cases (business hours: 9 AM - 5 PM, appointment slots, blocked lunch hours)
114- Combining restrictions with formats and intervals
115
116### Events and Commands
117📄 **Read:** [references/events-commands.md](references/events-commands.md)
118
119**When to read:** Handling time selection changes, dialog lifecycle, or using MVVM commands.
120
121**Coverage:**
122- SelectionChanged event
123 - TimePickerSelectionChangedEventArgs with NewValue and OldValue
124 - IsSelectionImmediate behavior (immediate vs deferred selection)
125- Dialog mode events:
126 - Opened event (when picker opens)
127 - Closing event with CancelEventArgs (can cancel closing)
128 - Closed event (after picker closes)
129- Footer view events:
130 - OkButtonClicked event
131 - CancelButtonClicked event
132- MVVM Commands:
133 - SelectionChangedCommand
134 - AcceptCommand (OK button)
135 - DeclineCommand (Cancel button)
136- Event usage patterns and best practices
137
138### Customization and Styling
139📄 **Read:** [references/customization.md](references/customization.md)
140
141**When to read:** Customizing picker appearance (colors, fonts, header/footer, visual effects).
142
143**Coverage:**
144- Header view customization
145 - Text, Height, Background, TextStyle properties
146- Footer view customization
147 - OkButtonText, CancelButtonText
148 - ShowOkButton, Height, Background, TextStyle
149- Column header view customization
150 - Text, Height, TextStyle per column
151- Selection view customization
152 - Background, Stroke, StrokeThickness, CornerRadius, TextStyle
153- TextDisplayMode options:
154 - Default, Fade, Shrink, FadeAndShrink
155- Liquid glass effect for modern UI
156- Item text styling
157- Complete customization examples
158
159### Accessibility and Localization
160📄 **Read:** [references/accessibility-localization.md](references/accessibility-localization.md)
161
162**When to read:** Implementing accessible controls or supporting multiple languages/cultures.
163
164**Coverage:**
165- WCAG compliance features
166- Screen reader support
167- Keyboard navigation
168- Semantic properties for accessibility
169- Localization configuration
170- Culture-specific time formatting
171- RTL (right-to-left) language support
172- Multi-language implementation examples
173