Custom Busy Content

Setting BusyContent property of RadBusyIndicator allows you to display any content together with the built-in animations while the control is in Busy state. Additionally, you can customize the BusyContentTemplate in order to arrange the custom content and the animated content per your choice.

Here is a quick example demonstrating how to apply BusyContent and BusyContentTemplate properties.

<!--<telerikPrimitives:RadBusyIndicator x:Name="BusyIndicator"
                           AnimationContentHeightRequest="100"
                           AnimationContentWidthRequest="100"  
                           AnimationType="Animation6"                                            
                           IsBusy="True">
    <telerikPrimitives:RadBusyIndicator.BusyContent>
        <Label Text="Working on it, just a moment, please..." />
    </telerikPrimitives:RadBusyIndicator.BusyContent>
    <telerikPrimitives:RadBusyIndicator.BusyContentTemplate>
        <ControlTemplate>
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="*" />
                </Grid.RowDefinitions>
                <ContentPresenter Content="{TemplateBinding Path=AnimationContent}" />
                <ContentPresenter Grid.Row="1"
                              Content="{TemplateBinding Path=BusyContent}"
                              HorizontalOptions="Center" />
            </Grid>
        </ControlTemplate>
    </telerikPrimitives:RadBusyIndicator.BusyContentTemplate>
</telerikPrimitives:RadBusyIndicator>-->
<telerikPrimitives:RadBusyIndicator x:Name="BusyIndicator"
                                    AnimationContentHeightRequest="100"
                                    AnimationContentWidthRequest="100"  
                                    AnimationType="Animation6"                                            
                                    IsBusy="True">           
    <telerikPrimitives:RadBusyIndicator.BusyContent>
        <Label Text="Working on it, just a moment, please..." />
    </telerikPrimitives:RadBusyIndicator.BusyContent>
    <telerikPrimitives:RadBusyIndicator.BusyContentTemplate>
        <ControlTemplate>
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="Auto" />
                    <RowDefinition Height="*" />
                </Grid.RowDefinitions>
                <ContentPresenter Content="{TemplateBinding Path=AnimationContent}" />
                <ContentPresenter Grid.Row="1"
                                  Content="{TemplateBinding Path=BusyContent}"
                                  HorizontalOptions="Center" />
            </Grid>
        </ControlTemplate>
    </telerikPrimitives:RadBusyIndicator.BusyContentTemplate>
</telerikPrimitives:RadBusyIndicator>

Also you will need to add the telerikPrimitives namespace:

xmlns:telerikPrimitives="clr-namespace:Telerik.XamarinForms.Primitives;assembly=Telerik.Maui.Controls.Compatibility"

Check the result in the image below:

BusyIndicator example

See Also

In this article
Not finding the help you need?