Partager via


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

Ce 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é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 Picker.UpdateMode propriété jointe sur une valeur de l’énumération UpdateMode :

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout Margin="20">
        <Picker ... Title="Select a monkey" ios:Picker.UpdateMode="WhenFinished">
          ...
        </Picker>
        ...
    </StackLayout>
</ContentPage>

Elle peut également être consommée à partir de C# à l’aide de l’API Fluent :

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...

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

La Picker.On<iOS> méthode spécifie que cette plateforme ne s’exécutera que sur iOS. La Picker.SetUpdateMode méthode, dans l’espace Xamarin.Forms.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 Xamarin.Forms.
  • 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 :

Sélecteur UpdateMode Platform-Specific