Partager via


TimePicker

Le .NET Multi-platform App UI (.NET MAUI) TimePicker appelle le contrôle de sélecteur de dates de la plateforme et vous permet de sélectionner une date.

TimePicker définit les propriétés suivantes :

  • Time de type TimeSpan, l’heure sélectionnée, qui est par défaut TimeSpan à 0. Le type TimeSpan indique une durée de temps depuis minuit.
  • Format de type string, une chaîne de mise en forme .NET standard ou personnalisée, dont la valeur par défaut est « t », le modèle de date courte.
  • TextColor de type Color, la couleur utilisée pour afficher l’heure sélectionnée.
  • FontAttributes de type FontAttributes, dont la valeur par défaut est FontAtributes.None.
  • FontFamily de type string, dont la valeur par défaut est null.
  • FontSize de type double, dont la valeur par défaut est -1.0.
  • CharacterSpacing, de type double, est l’espacement entre les caractères du texte TimePicker.

Toutes ces propriétés s’appuient sur des objets BindableProperty, ce qui signifie qu’elles peuvent être personnalisées et être des cibles de liaisons de données. La propriété Time a un mode de liaison par défaut de BindingMode.TwoWay, ce qui signifie qu’elle peut être la cible d’une liaison de données dans une application qui utilise le modèle-vue-vue modèle (MVVM).

Remarque

Le TimePicker n’inclut pas d’événement pour indiquer une nouvelle valeur Time sélectionnée. Si vous devez être averti de cela, vous pouvez ajouter un gestionnaire d’événements pour l’événement PropertyChanged.

En outre, TimePicker définit un évènement TimeSelected, qui est déclenché lorsque l’heure sélectionnée change. L’objet TimeChangedEventArgs qui accompagne l’évènement TimeSelected a les propriétés NewTime et OldTime, qui spécifient respectivement la nouvelle et l’ancienne heure.

Créer un TimePicker

Lorsque la propriété Time est spécifiée en XAML, la valeur est convertie en TimeSpan et validée pour s’assurer que le nombre de millisecondes est supérieur ou égal à 0, et que le nombre d’heures est inférieur à 24. Les composants de temps doivent être séparés par des points-virgules :

<TimePicker Time="4:15:26" />

Si la propriété BindingContext de TimePicker est définie sur l’instance d’un modèle de vue contenant des propriétés de type TimeSpan nommées SelectedTime (par exemple), vous pouvez instancier le TimePicker de la manière suivante :

<TimePicker Time="{Binding SelectedTime}" />

Dans cet exemple, la propriété Time est initialisée à la propriété SelectedTime du modèle de vue. Étant donné que la propriété Time a un mode de liaison de TwoWay, toute nouvelle heure sélectionnée par l’utilisateur est automatiquement propagée dans le modèle de vue.

Dans le code, vous pouvez initialiser la propriété Time à une valeur de type TimeSpan :

TimePicker timePicker = new TimePicker
{
  Time = new TimeSpan(4, 15, 26) // Time set to "04:15:26"
};

Pour obtenir plus d’informations sur la définition des propriétés de police, consultez les Polices.

TimePicker et disposition

Il est possible d’utiliser une option de disposition horizontale non contrainte telle que Center, Start ou End avec TimePicker :

<TimePicker ···
            HorizontalOptions="Center" />

Toutefois, ce n’est pas recommandé. Selon le paramètre de la propriété Format, il est possible que les heures sélectionnées nécessitent différentes largeurs d’affichage. Par exemple, la chaîne de format « T » entraîne l’affichage TimePicker des heures d’affichage dans un format long et « 4:15:26 AM » nécessite une largeur d’affichage supérieure au format de temps court (« t ») de « 4:15 AM ». Selon la plateforme, cette différence peut entraîner la modification d’affichage de la largeur de TimePicker dans la disposition ou une troncation de l’affichage.

Conseil

Il est préférable d’utiliser le paramètre par défaut HorizontalOptions de Fill avec TimePicker et de ne pas utiliser une largeur de Auto lors du placement de TimePicker dans une cellule Grid.

Différences selon les plateformes

Cette section décrit les différences propres à la plateforme concernant le contrôle TimePicker.

Sur Android, la propriété Format est respectée et affichée par le contrôle. Toutefois, lorsque le contrôle sélecteur est affiché en appuyant sur le contrôle, seule l’heure, les minutes et le moment de la journée peuvent être modifiés.