BusyIndicator w Silverlight

W Silverlight toolkit można znaleźć bardzo przydatną kontrolkę – BusyIndicator(poprzednia nazwa Activity). Służy ona do zasygnalizowania użytkownikowi, że jakaś operacja jest wykonywana. Na początek screen z gotowej aplikacji:

image

Co warto podkreślić, podczas stanu aktywnego kontrolki użytkownik nie może modyfikować danych, które przedstawia interfejs. Kontrolka działa w trybie modalnym – wszystko w tle jest zablokowane i automatycznie przyciemnione.

Po zainstalowaniu bibliotek z Silverlight toolkit, najlepiej dodać je do toolbox’a . W tym celu klikamy prawym przyciskiem myszki na oknie toolbox a następnie wybieramy “Choose Items”. W oknie przechodzimy do “Silverlight components” i klikamy w przycisk “Browse”. Przechodzimy do katalogu z zainstalowanymi bibliotekami  a następnie zaznaczamy System.Windows.Controls.Toolkit.dll.

Użycie kontrolki sprowadza się do ustawienia właściwości IsBusy na true w przypadku gdy chcemy zasygnalizować użytkownik wykonywaną operację:

<controlsToolkit:BusyIndicator IsBusy="True">

</controlsToolkit:BusyIndicator>

W praktyce oczywiście będziemy korzystać z wiązania danych i jako wartość IsBusy podamy np. {Binding Path=IsBusy}.

Następną istotną sprawą jest fakt, że w kontrolce BusyIndicator możemy zagnieżdżać inne kontrolki, które korzystają ze źródła danych. Wtedy IsBusy przeważnie jest już ustawiane automatycznie przez zagnieżdżoną kontrolkę.

Wygląd i zachowanie BusyIndictator możemy zmieniać dowolnie – podobnie jak resztę kontrolek WPF.

Leave a Reply

Your email address will not be published.