ProgressBar
Interfejs użytkownika aplikacji wieloplatformowej platformy .NET (.NET MAUI) ProgressBar wskazuje użytkownikom, że aplikacja przechodzi przez długotrwałe działanie. Pasek postępu to poziomy pasek wypełniony wartością procentową reprezentowaną double
przez wartość.
Wygląd elementu ProgressBar jest zależny od platformy, a poniższy zrzut ekranu przedstawia element ProgressBar w systemie Android:
ProgressBar definiuje dwie właściwości:
Progress
jest wartościądouble
reprezentującą bieżący postęp jako wartość z zakresu od 0 do 1.Progress
wartości mniejsze niż 0 zostaną zaciśnięte do 0, wartości większe niż 1 zostaną zaciśnięte do 1. Wartość domyślna tej właściwości to 0.ProgressColor
to Color wartości definiujące kolor elementu ProgressBar.
Te właściwości są wspierane przez BindableProperty obiekty, co oznacza, że mogą być obiektami docelowymi powiązań danych i stylizowanymi.
ProgressBar Definiuje również metodę ProgressTo
, która animuje słupek z bieżącej wartości na określoną wartość. Aby uzyskać więcej informacji, zobacz Animowanie paska postępu.
Tworzenie paska postępu
Aby wskazać postęp długotrwałego działania, utwórz ProgressBar obiekt i ustaw jego właściwości w celu zdefiniowania jego wyglądu.
W poniższym przykładzie XAML pokazano, jak wyświetlić element ProgressBar:
<ProgressBar Progress="0.5" />
Równoważny kod języka C# to:
ProgressBar progressBar = new ProgressBar { Progress = 0.5 };
Ostrzeżenie
Nie używaj nieobsługiwanych opcji układu poziomego, takich jak Center
, Start
lub End
z .ProgressBar Zachowaj wartość domyślną HorizontalOptions
.Fill
W poniższym przykładzie XAML pokazano, jak zmienić kolor elementu ProgressBar:
<ProgressBar Progress="0.5"
ProgressColor="Orange" />
Równoważny kod języka C# to:
ProgressBar progressBar = new ProgressBar
{
Progress = 0.5,
ProgressColor = Colors.Orange
};
Animowanie paska postępu
Metoda ProgressTo
animuje ProgressBar wartość z bieżącej Progress
wartości na podaną w czasie. Metoda akceptuje double
wartość postępu, uint
czas trwania w milisekundach, Easing wartość wyliczenia i zwraca Task<bool>
wartość . W poniższym przykładzie pokazano, jak animować element ProgressBar:
// animate to 75% progress over 500 milliseconds with linear easing
await progressBar.ProgressTo(0.75, 500, Easing.Linear);
Aby uzyskać więcej informacji na Easing temat wyliczenia, zobacz Funkcje easing.