Loading...
Loading...
Guide for implementing the Syncfusion WinUI BusyIndicator control to display loading indicators and progress status. Use this skill when implementing loading indicators, showing progress status, indicating background operations, or creating waiting screens in WinUI applications. Essential for async data loading, file operations, API calls, and any scenario requiring user notification during processing tasks.
npx skill4agent add syncfusion/winui-ui-components-skills syncfusion-winui-busy-indicatorSyncfusion.UI.Xaml.NotificationsSyncfusion.Notifications.WinUI<Page
xmlns:notification="using:Syncfusion.UI.Xaml.Notifications">
<Grid>
<notification:SfBusyIndicator
x:Name="busyIndicator"
IsActive="True"
AnimationType="DottedCircularFluent"
BusyContent="Loading..."
BusyContentPosition="Bottom"
Color="DodgerBlue"
SizeFactor="0.5"/>
</Grid>
</Page>using Syncfusion.UI.Xaml.Notifications;
// Create and configure BusyIndicator
SfBusyIndicator busyIndicator = new SfBusyIndicator
{
IsActive = true,
AnimationType = BusyIndicatorAnimationType.DottedCircularFluent,
BusyContent = "Loading...",
BusyContentPosition = BusyIndicatorContentPosition.Bottom,
Color = new SolidColorBrush(Colors.DodgerBlue),
SizeFactor = 0.5
};
// Add to UI
this.Content = busyIndicator;<notification:SfBusyIndicator
IsActive="True"
BusyContent="Loading..."/><Grid>
<notification:SfBusyIndicator
x:Name="busyIndicator"
IsActive="{x:Bind ViewModel.IsLoading, Mode=OneWay}"
AnimationType="DottedCircle"
BusyContent="Loading data..."/>
</Grid>private async void LoadDataAsync()
{
busyIndicator.IsActive = true;
try
{
await FetchDataFromApiAsync();
}
finally
{
busyIndicator.IsActive = false;
}
}<notification:SfBusyIndicator
IsActive="True"
AnimationType="LinearFluent"
BusyContent="Please wait..."
BusyContentPosition="Top"
Color="OrangeRed"
SizeFactor="0.7"/><Grid>
<!-- Main content -->
<StackPanel>
<TextBlock Text="Application Content"/>
<!-- Other UI elements -->
</StackPanel>
<!-- Overlay BusyIndicator -->
<Grid x:Name="loadingOverlay"
Background="#80000000"
Visibility="{x:Bind IsProcessing, Mode=OneWay}">
<notification:SfBusyIndicator
IsActive="True"
AnimationType="DoubleCircle"
BusyContent="Processing..."
Color="White"/>
</Grid>
</Grid><notification:SfBusyIndicator IsActive="True" AnimationType="DottedCircle">
<notification:SfBusyIndicator.BusyContentTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Spacing="10">
<TextBlock Text="⏳" FontSize="24"/>
<TextBlock Text="Loading data..."
FontSize="16"
FontWeight="SemiBold"/>
</StackPanel>
</DataTemplate>
</notification:SfBusyIndicator.BusyContentTemplate>
</notification:SfBusyIndicator><notification:SfBusyIndicator
IsActive="True"
AnimationType="SingleCircle"
DurationFactor="0.9"
SizeFactor="0.3"
Color="Gray"/>| Property | Type | Default | Description |
|---|---|---|---|
| bool | false | Controls whether the indicator is visible and animating. Set to |
| BusyIndicatorAnimationType | DottedCircularFluent | The animation style. Options: DottedCircularFluent, DottedCircle, DottedLinear, DoubleCircle, LinearBox, LinearFluent, LinearOscillatingBox, SingleCircle. |
| object | null | The content displayed below/above/beside the indicator (typically a message). |
| BusyIndicatorContentPosition | Bottom | Position of content relative to indicator. Options: Top, Bottom, Left, Right. |
| DataTemplate | null | Custom template for the busy content. Allows rich content beyond simple text. |
| double | 0.5 | Controls the size of the indicator. Range: 0.0 to 1.0. Higher values = larger indicator. |
| double | 0.5 | Controls animation speed. Range: 0.0 to 1.0. Higher values = slower animation. |
| Brush | System accent color | The color of the animated indicator elements. |
DispatcherQueue