Freigeben über


ProgressBar

Die .NET Multi-Platform App UI (.NET MAUI) ProgressBar zeigt Benutzer*innen an, dass die App einen längeren Prozess ausführt. Die Statusanzeige ist ein horizontaler Balken, der zu einem Prozentsatz gefüllt ist, der durch einen Wert von double dargestellt wird.

Die Darstellung einer ProgressBar ist plattformabhängig. Der folgende Screenshot zeigt eine ProgressBar unter Android:

Screenshot of ProgressBar on Android.

ProgressBar definiert zwei Eigenschaften:

  • Progress ist ein double-Wert, der den aktuellen Fortschritt als Wert zwischen 0 und 1 darstellt. Progress-Werte kleiner als 0 werden auf 0 festgelegt, Werte größer als 1 werden auf 1 festgelegt. Der Standardwert dieser Eigenschaft ist 0.
  • ProgressColor ist ein Color-Wert, der die Farbe der ProgressBar definiert.

Diese Eigenschaften werden durch BindableProperty-Objekte gestützt, was bedeutet, dass sie Ziele von Datenbindungen sein können, und geformt.

ProgressBar definiert auch eine ProgressTo-Methode, die den Balken von seinem aktuellen Wert zu einem bestimmten Wert animiert. Weitere Informationen finden Sie unter Animieren einer ProgressBar.

Erstellen einer ProgressBar

Um den Fortschritt eines längeren Prozesses anzuzeigen, erstellen Sie ein ProgressBar-Objekt und definieren Sie dessen Eigenschaften, um die Darstellung zu definieren.

Das folgende XAML-Beispiel zeigt, wie eine ProgressBar angezeigt wird.

<ProgressBar Progress="0.5" />

Der entsprechende C#-Code lautet:

ProgressBar progressBar = new ProgressBar { Progress = 0.5 };

Warnung

Verwenden Sie mit der ProgressBar keine uneingeschränkten horizontalen Layoutoptionen, wie z. B. Center, Start oder End. Behalten Sie den Standard-HorizontalOptions-Wert von Fill bei.

Das folgende XAML-Beispiel zeigt, wie die Farbe einer ProgressBar geändert wird:

<ProgressBar Progress="0.5"
             ProgressColor="Orange" />

Der entsprechende C#-Code lautet:

ProgressBar progressBar = new ProgressBar
{
    Progress = 0.5,
    ProgressColor = Colors.Orange
};

Animieren einer ProgressBar

Die ProgressTo-Methode animiert die ProgressBar im Laufe der Zeit von ihrem aktuellen Progress-Wert zu einem angegebenen Wert. Die Methode akzeptiert einen double-Fortschrittswert, eine uint-Dauer in Millisekunden, einen Easing- Enumerationswert und gibt einen Task<bool> zurück. Das folgende Beispiel zeigt, wie eine ProgressBar animiert wird.

// animate to 75% progress over 500 milliseconds with linear easing
await progressBar.ProgressTo(0.75, 500, Easing.Linear);

Weitere Informationen zur Easing-Enumeration finden Sie unter Beschleunigungsfunktionen.