title | page_title | description | slug | tags | published | position |
---|---|---|---|---|---|---|
Getting Started |
Getting Started |
Check our "Getting Started" documentation article for the RadBusyIndicator {{ site.framework_name }} control. |
radbusyindicator-getting-started |
getting,started |
true |
2 |
This tutorial will walk you through the creation of a sample application that contains RadBusyIndicator.
The RadBusyIndicator is displayed on the UI thread. If this thread is blocked, the control will not be shown. It is meant to indicate to the user that there is a long running background task/process.
To use RadBusyIndicator when working with NuGet packages, install the Telerik.Windows.Controls.for.Wpf.Xaml
package. The [package name may vary]({%slug nuget-available-packages%}) slightly based on the Telerik dlls set - [Xaml or NoXaml]({%slug xaml-vs-noxaml%})
Read more about NuGet installation in the [Installing UI for WPF from NuGet Package]({%slug nuget-installation%}) article.
tip With the 2025 Q1 release, the Telerik UI for WPF has a new licensing mechanism. You can learn more about it [here]({%slug installing-license-key%}).
If you are not using NuGet packages, you can add a reference to the following assemblies:
- Telerik.Licensing.Runtime
- Telerik.Windows.Controls
Make sure the required assembly reference is added to the project before you proceed with adding RadBusyIndicator to your project.
You can add RadBusyIndicator manually by writing the XAML code in Example 1. You can also add the control by dragging it from the Visual Studio Toolbox and dropping it over the XAML view.
{{region xaml-radbusyindicator-getting-started_1}} <telerik:RadBusyIndicator x:Name="radBusyIndicator"> </telerik:RadBusyIndicator> {{endregion}}
In order to use RadBusyIndicator in XAML, you have to add the namespace declaration shown in Example 2.
{{region xaml-radbusyindicator-getting-started_2}} xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" {{endregion}}
When you are using RadBusyIndicator, you always have to set its Content property. This will be the content on top of which you want to visualize RadBusyIndicator. Example 3 demonstrates RadBusyIndicator with some custom Content placed inside it:
{{region xaml-radbusyindicator-getting-started_3}} <telerik:RadBusyIndicator x:Name="radBusyIndicator"> telerik:RadListBox <telerik:RadListBoxItem Content="Australia" /> <telerik:RadListBoxItem Content="Brazil" /> <telerik:RadListBoxItem Content="Canada" /> <telerik:RadListBoxItem Content="China" /> <telerik:RadListBoxItem Content="England" /> <telerik:RadListBoxItem Content="Germany" /> </telerik:RadListBox> </telerik:RadBusyIndicator> {{endregion}}
To activate RadBusyIndicator you have to set its IsBusy boolean property to True. It is a Dependency property that you can data bind in any way that suits your custom logic.
RadBusyIndicator will be visible only when the IsBusy property is set to True.
Example 4 presents RadBusyIndicator with its IsBusy property set to True:
{{region xaml-radbusyindicator-getting-started_4}} <telerik:RadBusyIndicator x:Name="radBusyIndicator" IsBusy="True"> telerik:RadListBox telerik:RadListBox <telerik:RadListBoxItem Content="Australia" /> <telerik:RadListBoxItem Content="Brazil" /> <telerik:RadListBoxItem Content="Canada" /> <telerik:RadListBoxItem Content="China" /> <telerik:RadListBoxItem Content="England" /> <telerik:RadListBoxItem Content="Germany" /> </telerik:RadListBox> </telerik:RadListBox> </telerik:RadBusyIndicator> {{endregion}}
If you run the application you will see RadBusyIndicator placed on top of its Content.
RadBusyIndicator supports two main modes of execution that could be used to visualize the progress of the control - determined and indetermined. If you need a determined RadBusyIndicator you have to set the value of the IsIndeterminated property to False. Please, check [this]({%slug radbusyindicator-features-progress-determination%}) article for some information concerning the progress determination of RadBusyIndicator.
RadBusyIndicator exposes a BusyContentTemplate property of type DataTemplate. Through this template you can customize what is shown in RadBusyIndicator's content while the indicator is active. For more information, look at [this article]({%slug radbusyindicator-features-custom-busy-content%}).
You can notify the users about an ongoing process with a specific delay when RadBusyIndicator is used. By changing the DisplayAfter property to a certain TimeSpan, RadBusyIndicator will be shown after the corresponding amount of time elapses - the default value of this delay is 100 milliseconds. For detailed information about using a delay with RadBusyIndicator, look at [this article]({%slug radbusyindicator-features-delayed-display%}).
The controls from our suite support different themes. You can see how to apply a theme different than the default one in the [Setting a Theme]({%slug styling-apperance-implicit-styles-overview%}) help article.
important Changing the theme using implicit styles will affect all controls that have styles defined in the merged resource dictionaries. This is applicable only for the controls in the scope in which the resources are merged.
To change the theme, you can follow the steps below:
-
Choose between the themes and add reference to the corresponding theme assembly (ex: Telerik.Windows.Themes.Fluent.dll). You can see the different themes applied in the Theming examples from our {% if site.site_name == 'WPF' %}WPF Controls Examples{% else %}Silverlight Controls Examples{% endif %} application.
-
Merge the ResourceDictionaries with the namespace required for the controls that you are using from the theme assembly. For the RadBreadcrumb, you will need to merge the following resources:
- Telerik.Windows.Controls
Example 5 demonstrates how to merge the ResourceDictionaries so that they are applied globally for the entire application.
{{region xaml-radbusyindicator-getting-started_5}} <Application.Resources> <ResourceDictionary.MergedDictionaries> </ResourceDictionary.MergedDictionaries> </Application.Resources> {{endregion}}
Alternatively, you can use the theme of the control via the {% if site.site_name == 'WPF' %}StyleManager{% else %}StyleManager{% endif %}.
Figure 1 shows a RadBusyIndicator with the Fluent theme applied.
{% if site.site_name == 'WPF' %}
- Telerik UI for WPF BusyIndicator Component
- [Getting Started with Telerik UI for WPF Components]({%slug getting-started-first-steps%})
- [Telerik UI for WPF Installation]({%slug installation-installing-which-file-do-i-need%})
- [Telerik UI for WPF and WinForms Integration]({%slug winforms-integration%})
- [Telerik UI for WPF Visual Studio Templates]({%slug visual-studio-templates%})
- [Setting a Theme with Telerik UI for WPF]({%slug styling-apperance-implicit-styles-overview%})
- Telerik UI for WPF Virtual Classroom (Training Courses for Registered Users)
- Telerik UI for WPF License Agreement {% endif %}
-
[Overview]({%slug radbusyindicator-overview%})
-
[Visual Structure]({%slug radbusyindicator-visual-structure%})
-
[Styles and Templates - Overview]({%slug radbusyindicator-styles-and-templates-overview%})
-
[Integrate with services and a RadWindow]({%slug radbusyindicator-how-to-integrate-with-services-and-radwindow%})