This package provides the functionality to utilize the features of Syncfusion® Maui Calendar control and more.
Install
| Product | Versions |
|---|---|
| .NET |
README
Syncfusion .NET MAUI Calendar (SfCalendar)
The Syncfusion .NET MAUI Calendar is a feature-rich calendar control for date navigation and selection. Choose from multiple calendar views, select single dates or date ranges, restrict unavailable dates, and localize content for different languages and cultures. Build modern calendar applications for Android, iOS, macOS, and Windows from a single codebase.
Documentation · Getting Started · API Reference · Demos on GitHub · Product Page · Release Notes

Using this package with an AI coding agent
Before generating Syncfusion code, ask your AI coding agent to run the Syncfusion setup using the following prompt:
Set up this project for Syncfusion before generating code. Fetch and follow the official instructions at https://ai.syncfusion.com, then report the detected platform, installed skill pack, MCP status, and any required licensing action.The setup detects your project’s platform and loads the appropriate Syncfusion skill pack. No Syncfusion account or MCP key is required to install or read Syncfusion agent skills.
Platform reference: https://ai.syncfusion.com/maui/llms.txt
Key features
Views
- Display dates using Month, Year, Decade, and Century views.
- Navigate seamlessly between calendar views to browse dates at different levels.
- Configure whether the calendar stays in a single view or allows navigation across views.
- Display dates using different calendar systems and identifiers.
Selection
- Select a single date, multiple dates, date range, or multiple ranges.
- Programmatically select and update dates.
- Highlight today, selected dates, and special dates with custom appearance settings.
- Customize selection visuals to match application requirements.
Navigation and restrictions
- Navigate between dates using swipe gestures and programmatic navigation.
- Restrict navigation and selection using minimum and maximum date ranges.
- Prevent interaction with specific dates using SelectableDayPredicate.
Appearance and customization
- Customize calendar cells, headers, and footers.
- Style weekdays, weekends, today, blackout dates, and selected dates.
- Customize text, colors, shapes, templates and template selectors.
- Present the calendar in a dialog mode for a focused date selection experience.
Events and interactions
- Respond to date selection and navigation actions through built-in events.
- Track changes to the visible date range and calendar view.
- Integrate calendar interactions with application workflows.
Themes and visual effects
- Customize the calendar's appearance using themes.
- Enable Liquid Glass effects on supported platforms.
Globalization and accessibility
- Localize calendar content for different languages and cultures.
- Adapt date presentation to regional preferences with multiple calendar identifiers.
- Create localized experiences with both right-to-left (RTL) and left-to-right (LTR) layouts.
- Make calendar interactions more accessible with keyboard navigation and screen reader support.
Supported platforms
| Platform | Target framework |
|---|---|
| Android | net9.0-android, net10.0-android |
| iOS | net9.0-ios, net10.0-ios |
| macOS (Mac Catalyst) | net9.0-maccatalyst, net10.0-maccatalyst |
| Windows | net9.0-windows10.0.19041, net10.0-windows10.0.19041 |
Minimum OS versions follow the .NET MAUI supported platforms.
Installation
.NET CLI
dotnet add package Syncfusion.Maui.Scheduler
Package Manager Console
Install-Package Syncfusion.Maui.Scheduler
Getting started
1. Register the Syncfusion core handler
In MauiProgram.cs, call ConfigureSyncfusionCore():
using Syncfusion.Maui.Core.Hosting;
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.ConfigureSyncfusionCore();
return builder.Build();
}
}
2. Add SfCalendar to your page
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:calendar="clr-namespace:Syncfusion.Maui.Calendar;assembly=Syncfusion.Maui.Calendar"
xmlns:local="clr-namespace:YourAppNamespace"
x:Class="YourAppNamespace.MainPage">
<calendar:SfCalendar />
</ContentPage>
3. Configure the calendar view
<calendar:SfCalendar View="Month" />
Run the app. The calendar opens in Month view and displays the current month.
Common scenarios
Select multiple dates
<calendar:SfCalendar SelectionMode="Multiple" />
Select a date range
<calendar:SfCalendar SelectionMode="Range" />
Display dates in a Year view
<calendar:SfCalendar View="Year" />
Restrict available dates
<calendar:SfCalendar MinimumDate="2026/01/01"
MaximumDate="2026/12/31" />
Disable specific dates
<calendar:SfCalendar x:Name="calendar"
View="Month">
</calendar:SfCalendar>
using Syncfusion.Maui.Calendar;
. . .
this.calendar.SelectableDayPredicate = (date) =>
{
if (date.Date == DateTime.Now.AddDays(1).Date ||
date.Date == DateTime.Now.AddDays(3).Date ||
date.Date == DateTime.Now.AddDays(5).Date ||
date.Date == DateTime.Now.AddDays(7).Date ||
date.Date == DateTime.Now.AddDays(9).Date)
{
return false;
}
return true;
};
Use a different calendar system
<calendar:SfCalendar Identifier="Hijri" />
Use dialog mode for date selection
<Grid>
<calendar:SfCalendar x:Name="calendar"
Mode="Dialog" />
<Button Text="Open Calendar"
x:Name="calendarButton"
Clicked="Button_Clicked"
HorizontalOptions="Center"
VerticalOptions="Center"
HeightRequest="50"
WidthRequest="150">
</Button>
</Grid>
using Syncfusion.Maui.Calendar;
. . .
private void Button_Clicked(object sender, System.EventArgs e)
{
this.calendar.IsOpen = true;
}
For more features, see the Calendar documentation.
Dependencies
Installing this package also installs the following packages:
Microsoft.Maui.ControlsSyncfusion.Maui.CoreSyncfusion.Maui.Popup
Licensing
This is a commercial product and requires a paid license. You have three options:
- Free Community License: for individual developers and small businesses. Check eligibility
- 30-day free trial: Start a trial
- Commercial license: View pricing
Register your license key
Register the key in MauiProgram.cs before the app is built:
Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense("YOUR_LICENSE_KEY");
For details, see Licensing overview. Use of this package is subject to the Syncfusion EULA.
Support and feedback
- Support tickets: Syncfusion Support Portal
- Community forums: .NET MAUI Forums
- Feature requests and bug reports: Feedback Portal
- Samples: Syncfusion .NET MAUI demos on GitHub
About Syncfusion
Founded in 2001 and headquartered in Research Triangle Park, N.C., Syncfusion has more than 26,000+ customers and more than 1 million users, including large financial institutions, Fortune 500 companies, and global IT consultancies.
Today, we provide 1600+ components and frameworks for web (Blazor, ASP.NET Core, ASP.NET MVC, ASP.NET WebForms, JavaScript, Angular, React, Vue, and Flutter), mobile (.NET MAUI, Xamarin, Flutter, UWP, and JavaScript), and desktop development (WinForms, WPF, WinUI, Flutter and UWP). We provide ready-to-deploy enterprise software for dashboards, reports, data integration, and big data processing. Many customers have saved millions in licensing fees by deploying our software.
[email protected] | www.syncfusion.com | Toll Free: 1-888-9 DOTNET
Changes from Previous Version
Adoption Assessment
A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.
Related Guides & Workflows
Learn how to evaluate, integrate, or audit this package in your .NET project.