Xamarin.Forms Progressbar

Télécharger l’exemple Télécharger l’exemple

Le Xamarin.FormsProgressBar contrôle représente visuellement la progression sous la forme d’une barre horizontale remplie à un pourcentage représenté par une float valeur. La classe ProgressBar hérite des données de l’élément View.

Les captures d’écran suivantes montrent un ProgressBar sur iOS et Android :

Capture d’écran de ProgressBar sur iOS et Android

Le ProgressBar contrôle définit deux propriétés :

  • Progress est une float valeur qui représente la progression actuelle sous la forme d’une valeur comprise entre 0 et 1. Progress Les valeurs inférieures à 0 sont limitées à 0, les valeurs supérieures à 1 sont limitées à 1.
  • ProgressColor est un Color qui affecte la couleur de barre intérieure représentant la progression actuelle.

Ces propriétés sont soutenues par BindableProperty des objets, ce qui signifie que le ProgressBar peut être stylisé et être la cible des liaisons de données.

Le ProgressBar contrôle définit également une ProgressTo méthode qui anime la barre de sa valeur actuelle vers une valeur spécifiée. Pour plus d’informations, consultez Animer une barre de progression.

Notes

N’accepte pas la ProgressBar manipulation de l’utilisateur, il est ignoré lors de l’utilisation de la touche Tab pour sélectionner des contrôles.

Créer un ProgressBar

Un ProgressBar peut être instancié en XAML. Sa Progress propriété détermine le pourcentage de remplissage de la barre de couleur interne. La valeur par défaut Progress de la propriété est 0. L’exemple suivant montre comment instancier un ProgressBar en XAML avec la propriété facultative Progress définie :

<ProgressBar Progress="0.5" />

Un ProgressBar peut également être créé dans le code :

ProgressBar progressBar = new ProgressBar { Progress = 0.5f };

Avertissement

N’utilisez pas d’options de disposition horizontale sans contrainte, telles que Center, Startou End avec ProgressBar. Sur UWP, le ProgressBar réduit à une barre de largeur nulle. Conservez la valeur par défaut HorizontalOptions de Fill et n’utilisez pas une largeur de Auto lorsque vous placez un ProgressBar dans une Grid disposition.

Propriétés d’apparence ProgressBar

La ProgressColor propriété définit la couleur de barre interne lorsque la Progress propriété est supérieure à zéro. L’exemple suivant montre comment instancier un ProgressBar en XAML avec la ProgressColor propriété définie :

<ProgressBar ProgressColor="Orange" />

La ProgressColor propriété peut également être définie lors de la création d’un ProgressBar dans le code :

ProgressBar progressBar = new ProgressBar { ProgressColor = Color.Orange };

Les captures d’écran suivantes montrent avec ProgressBar la ProgressColor propriété définie Color.Orange sur sur iOS et Android :

Capture d’écran de progressBar avec style sur iOS et Android

Animer une barre de progression

La ProgressTo méthode anime le ProgressBar à partir de sa valeur actuelle Progress vers une valeur fournie au fil du temps. La méthode accepte une float valeur de progression, une uint durée en millisecondes, une valeur d’énumération Easing et retourne un Task<bool>. Le code suivant montre comment animer un ProgressBar:

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

Pour plus d’informations sur l’énumération Easing , consultez Fonctions d’accélération dans Xamarin.Forms.