Getting Started with .NET MAUI Busy Indicator

10 Dec 20246 minutes to read

This section guides you through setting up and configuring a Busy Indicator in your .NET MAUI application. Follow the steps below to add a basic Busy Indicator to your project.

To quickly get started with the .NET MAUI Busy Indicator, watch this video.

Prerequisites

Before proceeding, ensure the following are set up:

  1. Install .NET 8 SDK or later is installed.
  2. Set up a .NET MAUI environment with Visual Studio 2022 (v17.3 or later) or Visual Studio Code. For Visual Studio Code users, ensure that the .NET MAUI workload is installed and configured as described here..

Step 1: Create a New MAUI Project

  1. Go to File > New > Project and choose the .NET MAUI App template.
  2. Name the project and choose a location. Then, click Next.
  3. Select the .NET framework version and click Create.
  1. Open the command palette by pressing Ctrl+Shift+P and type .NET:New Project and enter.
  2. Choose the .NET MAUI App template.
  3. Select the project location, type the project name and press Enter.
  4. Then choose Create project.

Step 2: Install the Syncfusion MAUI Core NuGet Package

  1. In Solution Explorer, right-click the project and choose Manage NuGet Packages.
  2. Search for Syncfusion.Maui.Core and install the latest version.
  3. Ensure the necessary dependencies are installed correctly, and the project is restored.

Step 3: Register the handler

Syncfusion.Maui.Core NuGet is a dependent package for all Syncfusion controls of .NET MAUI. In the MauiProgram.cs file, register the handler for Syncfusion core.

  • C#
  • using Microsoft.Maui;
    using Microsoft.Maui.Hosting;
    using Microsoft.Maui.Controls.Compatibility;
    using Microsoft.Maui.Controls.Hosting;
    using Microsoft.Maui.Controls.Xaml;
    using Syncfusion.Maui.Core.Hosting;
    
    namespace BusyIndicatorSample
    {
        public static class MauiProgram
        {
        public static MauiApp CreateMauiApp()
        {
            var builder = MauiApp.CreateBuilder();
            builder
            .UseMauiApp<App>()
            .ConfigureSyncfusionCore() 
            .ConfigureFonts(fonts =>
            {
                fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
            });
    
            return builder.Build();
            }      
        }
    }

    Step 4: Add a Basic Busy Indicator

    1. To initialize the control, import the Core namespace into your code.

    2. Initialize SfBusyIndicator

    <ContentPage 
                ...
                xmlns:core="clr-namespace:Syncfusion.Maui.Core;assembly=Syncfusion.Maui.Core">
        <ContentPage.Content> 
    	 	<core:SfBusyIndicator x:Name="busyIndicator"
                              IsRunning = "True" />
    	</ContentPage.Content> 
    </ContentPage>
    using Syncfusion.Maui.Core;
    
    namespace BusyIndicatorSample   
    {  
    	public partial class MainPage : ContentPage                  
    	{ 
    		public MainPage()   
    		{   
    			InitializeComponent();       
    			SfBusyIndicator busyIndicator = new SfBusyIndicator(){IsRunning = true};
                Content = busyIndicator;   
    		}  
    	}  
    }

    Step 5: Setting Animation Type in .NET MAUI Busy Indicator

    .NET MAUI Busy Indicator provides some predefined animation types like Cupertino, LinearMaterial, and CircularMaterial. Users can select any one of the animation types using the AnimationType property.

    The following example depicts the CircularMaterial type animation of .NET MAUI Busy Indicator.

    <?xml version="1.0" encoding="utf-8" ?>
    <ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
            xmlns:core="clr-namespace:Syncfusion.Maui.Core;assembly=Syncfusion.Maui.Core"
            x:Class="BusyIndicatorSample.MainPage">
    
        <ContentPage.Content>
            <core:SfBusyIndicator x:Name="busyIndicator"
                                  IsRunning="True"
                                  AnimationType="CircularMaterial" />
        </ContentPage.Content>
    </ContentPage>
    using Syncfusion.Maui.Core;
    using Microsoft.Maui;
    using Microsoft.Maui.Controls;
    
    namespace BusyIndicatorSample
    {
        public partial class MainPage : ContentPage
        {
            public MainPage()
            {
                InitializeComponent();
                SfBusyIndicator busyIndicator = new SfBusyIndicator()
                {
                    IsRunning = true,
                    AnimationType = AnimationType.CircularMaterial;
                };
            this.Content = busyIndicator;
            }
        }
    }

    The following gif image illustrates the result of the above code.

    Circular material in .NET MAUI Busy Indicator.

    You can find the complete getting started sample of .NET MAUI Busy Indicator from this link.

    NOTE

    You can refer to our .NET MAUI Busy Indicator feature tour page for its groundbreaking feature representations. You can also explore our .NET MAUI Busy Indicator Example that shows you how to render the Busy Indicator in .NET MAUI.