Partager via


Sélection d’élément du sélecteur sur iOS

Cette interface utilisateur d’application multiplateforme .NET (.NET MAUI) contrôle spécifique à la plateforme iOS lorsque la sélection d’élément se produit dans un Picker, ce qui permet à l’utilisateur de spécifier cette sélection d’éléments lors de la navigation dans le contrôle, ou une seule fois que le bouton Terminé est enfoncé. Elle est consommée en XAML en définissant la Picker.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 Margin="20">
        <Picker ... Title="Select a monkey" ios:Picker.UpdateMode="WhenFinished">
          ...
        </Picker>
        ...
    </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;
...

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

La Picker.On<iOS> méthode spécifie que cette plateforme spécifique ne s’exécutera que sur iOS. La Picker.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 Picker. Il s’agit du comportement par défaut dans .NET MAUI.
  • WhenFinished : la sélection d’élément se produit uniquement une fois que l’utilisateur a appuyé sur le bouton Terminé dans le Picker.

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 (picker.On<iOS>().UpdateMode())
{
    case UpdateMode.Immediately:
        picker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
        break;
    case UpdateMode.WhenFinished:
        picker.On<iOS>().SetUpdateMode(UpdateMode.Immediately);
        break;
}

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

Picker UpdateMode Platform-Specific.