Migrate Syncfusion® Xamarin Controls and NuGet Packages to .NET MAUI
18 Nov 201812 minutes to read
Syncfusion® Essential Studio® ships a dedicated .NET MAUI suite that replaces the legacy Xamarin.Forms controls. Every Xamarin control has a direct .NET MAUI equivalent under the Syncfusion.Maui.* namespace, delivered through standalone NuGet packages. The following table consolidates the control-to-NuGet mapping for every supported Xamarin control and its .NET MAUI counterpart. Use the NuGet column to add the package via the Package Manager UI, the dotnet CLI, or the Package Manager Console.
Control and NuGet package mapping
| Xamarin control | Xamarin NuGet package | MAUI equivalent control | MAUI NuGet package |
|---|---|---|---|
| SfAccordion | Syncfusion.Xamarin.Expander | SfAccordion | Syncfusion.Maui.Expander |
| SfAutoComplete | Syncfusion.Xamarin.SfAutoComplete | SfAutoComplete | Syncfusion.Maui.Inputs |
| SfAvatarView | Syncfusion.Xamarin.Core | SfAvatarView | Syncfusion.Maui.Core |
| SfBackdropPage | Syncfusion.Xamarin.SfBackdrop | SfBackdropPage | Syncfusion.Maui.Backdrop |
| SfBadgeView | Syncfusion.Xamarin.SfBadgeView | SfBadgeView | Syncfusion.Maui.Core |
| SfBarcode | Syncfusion.Xamarin.SfBarcode | SfBarcodeGenerator | Syncfusion.Maui.Barcode |
| SfBorder | Syncfusion.Xamarin.Core | Obsolete. Use Border | – |
| SfButton | Syncfusion.Xamarin.Buttons | SfButton | Syncfusion.Maui.Buttons |
| SfBusyIndicator | Syncfusion.Xamarin.SfBusyIndicator | SfBusyIndicator | Syncfusion.Maui.Core |
| SfCalendar | Syncfusion.Xamarin.SfCalendar | SfCalendar | Syncfusion.Maui.Calendar |
| SfCardView | Syncfusion.Xamarin.Cards | SfCards | Syncfusion.Maui.Cards |
| SfCarousel | Syncfusion.Xamarin.SfCarousel | SfCarousel | Syncfusion.Maui.Carousel |
| SfChart | Syncfusion.Xamarin.SfChart |
SfCartesianChart SfCircularChart SfFunnelChart SfPolarChart SfPyramidChart |
Syncfusion.Maui.Charts |
| SfChat | Syncfusion.Xamarin.SfChat | SfChat | Syncfusion.Maui.Chat |
| SfCheckBox | Syncfusion.Xamarin.Buttons | SfCheckBox | Syncfusion.Maui.Buttons |
| SfChips | Syncfusion.Xamarin.Buttons | SfChips | Syncfusion.Maui.Core |
| SfCircularGauge | Syncfusion.Xamarin.SfGauge | SfRadialGauge | Syncfusion.Maui.Gauges |
| SfCircularProgressBar | Syncfusion.Xamarin.SfProgressBar | SfCircularProgressBar | Syncfusion.Maui.ProgressBar |
| SfComboBox | Syncfusion.Xamarin.SfComboBox | SfComboBox | Syncfusion.Maui.Inputs |
| SfDataForm | Syncfusion.Xamarin.SfDataForm | SfDataForm | Syncfusion.Maui.DataForm |
| SfDataGrid | Syncfusion.Xamarin.SfDataGrid | SfDataGrid | Syncfusion.Maui.DataGrid |
| SfDatePicker | Syncfusion.Xamarin.SfPicker | SfDatePicker | Syncfusion.Maui.Picker |
| SfDateTimePicker | Syncfusion.Xamarin.SfPicker | SfDateTimePicker | Syncfusion.Maui.Picker |
| SfDateTimeRangeNavigator | Syncfusion.Xamarin.SfChart | SfDateTimeRangeSlider | Syncfusion.Maui.Sliders |
| SfDiagram | Syncfusion.Xamarin.SfDiagram | Obsolete. Use Syncfusion® Blazor Diagram. | – |
| SfDigitalGauge | Syncfusion.Xamarin.SfGauge | SfDigitalGauge | Syncfusion.Maui.Gauges |
| SfEffectsView | Syncfusion.Xamarin.Core | SfEffectsView | Syncfusion.Maui.Core |
| SfExpander | Syncfusion.Xamarin.Expander | SfExpander | Syncfusion.Maui.Expander |
| SfGradientView | Syncfusion.Xamarin.Core | Obsolete. Use Gradients | – |
| SfImageEditor | Syncfusion.Xamarin.SfImageEditor | SfImageEditor | Syncfusion.Maui.ImageEditor |
| SfKanban | Syncfusion.Xamarin.SfKanban | SfKanban | Syncfusion.Maui.Kanban |
| SfLinearGauge | Syncfusion.Xamarin.SfGauge | SfLinearGauge | Syncfusion.Maui.Gauges |
| SfLinearProgressBar | Syncfusion.Xamarin.SfProgressBar | SfLinearProgressBar | Syncfusion.Maui.ProgressBar |
| SfListView | Syncfusion.Xamarin.SfListView | SfListView | Syncfusion.Maui.ListView |
| SfMaps | Syncfusion.Xamarin.SfMaps | SfMaps | Syncfusion.Maui.Maps |
| SfMaskedEdit | Syncfusion.Xamarin.SfMaskedEdit | SfMaskedEntry | Syncfusion.Maui.Inputs |
| SfNavigationDrawer | Syncfusion.Xamarin.SfNavigationDrawer | SfNavigationDrawer | Syncfusion.Maui.NavigationDrawer |
| SfNumericTextBox | Syncfusion.Xamarin.SfNumericTextBox | SfNumericEntry | Syncfusion.Maui.Inputs |
| SfNumericUpDown | Syncfusion.Xamarin.SfNumericUpDown | SfNumericEntry | Syncfusion.Maui.Inputs |
| SfParallaxView | Syncfusion.Xamarin.SfParallaxView | SfParallaxView | Syncfusion.Maui.ParallaxView |
| SfPdfViewer | Syncfusion.Xamarin.SfPdfViewer | SfPdfViewer | Syncfusion.Maui.PdfViewer |
| SfPicker | Syncfusion.Xamarin.SfPicker | SfPicker | Syncfusion.Maui.Picker |
| SfPopUpLayout | Syncfusion.Xamarin.SfPopupLayout | SfPopup | Syncfusion.Maui.Popup |
| SfPullToRefresh | Syncfusion.Xamarin.SfPullToRefresh | SfPullToRefresh | Syncfusion.Maui.PullToRefresh |
| SfRadioButton | Syncfusion.Xamarin.Buttons | SfRadioButton | Syncfusion.Maui.Buttons |
| SfRadialMenu | Syncfusion.Xamarin.SfRadialMenu | SfRadialMenu | Syncfusion.Maui.RadialMenu |
| SfRangeSlider | Syncfusion.Xamarin.SfRangeSlider | SfRangeSlider | Syncfusion.Maui.Sliders |
| SfRating | Syncfusion.Xamarin.SfRating | SfRating | Syncfusion.Maui.Inputs |
| SfRotator | Syncfusion.Xamarin.SfRotator | SfRotator | Syncfusion.Maui.Rotator |
| SfSchedule | Syncfusion.Xamarin.SfSchedule | SfScheduler | Syncfusion.Maui.Scheduler |
| SfSegmentedControl | Syncfusion.Xamarin.Buttons | SfSegmentedControl | Syncfusion.Maui.Buttons |
| SfShimmer | Syncfusion.Xamarin.Core | SfShimmer | Syncfusion.Maui.Core |
| SfSignaturePad | Syncfusion.Xamarin.SfSignaturePad | SfSignaturePad | Syncfusion.Maui.SignaturePad |
| SfSparkline | Syncfusion.Xamarin.SfSparkline | SfSparkChart - available in Toolkit | Syncfusion.Maui.Toolkit |
| SfStepProgressBar | Syncfusion.Xamarin.SfProgressBar | SfStepProgressBar | Syncfusion.Maui.ProgressBar |
| SfSunburstChart | Syncfusion.Xamarin.SfSunburstChart | SfSunburstChart | Syncfusion.Maui.SunburstChart |
| SfSwitch | Syncfusion.Xamarin.Buttons | SfSwitch | Syncfusion.Maui.Buttons |
| SfTabView | Syncfusion.Xamarin.SfTabView | SfTabView | Syncfusion.Maui.TabView |
| SfTextInputLayout | Syncfusion.Xamarin.Core | SfTextInputLayout | Syncfusion.Maui.Core |
| SfTimePicker | Syncfusion.Xamarin.SfPicker | SfTimePicker | Syncfusion.Maui.Picker |
| SfTreemap | Syncfusion.Xamarin.SfTreeMap | SfTreeMap | Syncfusion.Maui.TreeMap |
| SfTreeView | Syncfusion.Xamarin.SfTreeView | SfTreeView | Syncfusion.Maui.TreeView |
Obsolete controls
The following Xamarin.Forms controls have no direct Syncfusion® .NET MAUI counterpart and are marked as obsolete:
- SfBorder - Use the .NET MAUI Border element.
- SfGradientView - Use .NET MAUI Gradients (LinearGradientBrush, RadialGradientBrush).
- SfDiagram - Use Syncfusion® Blazor Diagram hosted in the .NET MAUI application.
Notes on specific migrations
- SfChart - multiple chart controls: The single Xamarin SfChart is split into chart-type-specific controls in .NET MAUI - SfCartesianChart, SfCircularChart, SfFunnelChart, SfPolarChart, and SfPyramidChart. All five ship in the same Syncfusion.Maui.Charts package.
- Several input controls share one package: Syncfusion.Maui.Inputs hosts SfAutoComplete, SfComboBox, SfMaskedEntry, SfNumericEntry (replaces both SfNumericTextBox and SfNumericUpDown), and SfRating. Installing this one package covers all of them.
- Pickers share one package: SfDatePicker, SfDateTimePicker, SfTimePicker, and SfPicker all ship in Syncfusion.Maui.Picker.
- Gauges share one package: SfRadialGauge (replaces SfCircularGauge), SfLinearGauge, and SfDigitalGauge all ship in Syncfusion.Maui.Gauges.
- Progress bars share one package: SfCircularProgressBar, SfLinearProgressBar, and SfStepProgressBar all ship in Syncfusion.Maui.ProgressBar.
- SfSparkline is now Toolkit-only: The .NET MAUI equivalent, SfSparkChart ships in the Syncfusion.Maui.Toolkit package rather than a chart-specific package.
- Shared package note: Syncfusion.Maui.Core is a shared package used by several lightweight controls (SfAvatarView, SfBadgeView, SfBusyIndicator, SfChips, SfEffectsView, SfShimmer, SfTextInputLayout) - a single install covers them all.