Partager via


Sélection de l’élément DatePicker sur iOS

Cette interface utilisateur de l’application multiplateforme .NET (.NET MAUI) contrôle spécifique à la plateforme lorsque la sélection d’élément se produit dans un DatePicker, ce qui vous permet de spécifier que cette sélection d’élément se produit lors de la navigation d’éléments dans le contrôle, ou une seule fois que le bouton Terminé est enfoncé. Elle est consommée en XAML en définissant la DatePicker.UpdateMode propriété jointe sur une valeur de l’énumération UpdateMode :

<ContentPage ...
             xmlns:ios="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific;assembly=Microsoft.Maui.Controls">
    <StackLayout>
       <DatePicker MinimumDate="01/01/2020"
                   MaximumDate="12/31/2020"
                   ios:DatePicker.UpdateMode="WhenFinished" />
       ...
    </StackLayout>
</ContentPage>

Vous pouvez également l’utiliser à partir de C# à l’aide de l’API Fluent :

using Microsoft.Maui.Controls.PlatformConfiguration;
using Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific;
...

datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);

La DatePicker.On<iOS> méthode spécifie que cette plateforme spécifique ne s’exécutera que sur iOS. La DatePicker.SetUpdateMode méthode, dans l’espace Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific de noms, est utilisée pour contrôler quand la sélection d’élément se produit, avec l’énumération UpdateMode fournissant deux valeurs possibles :

  • Immediately : la sélection d’élément se produit lorsque l’utilisateur parcoure les éléments dans le DatePicker. C’est le paramétrage par défaut.
  • WhenFinished : la sélection d’élément se produit uniquement une fois que l’utilisateur a appuyé sur le bouton Terminé dans le DatePicker.

En outre, la SetUpdateMode méthode peut être utilisée pour activer/désactiver les valeurs d’énumération en appelant la UpdateMode méthode, qui retourne le résultat actuel UpdateMode:

switch (datePicker.On<iOS>().UpdateMode())
{
    case UpdateMode.Immediately:
        datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
        break;
    case UpdateMode.WhenFinished:
        datePicker.On<iOS>().SetUpdateMode(UpdateMode.Immediately);
        break;
}

Le résultat est qu’un spécifié UpdateMode est appliqué au DatePicker, qui contrôle lorsque la sélection d’élément se produit :

Screenshot of DatePicker update modes.