Sans paramétrage spécifique, un SearchPicker montrera cette valeur lors de son affichage :
- S'il est lié à un tableau de Strings : aucune valeur
- S'il est lié à un tableau d'ItemDescriptors : la première valeur
- S'il est lié à une liste d'éléments provenant de Mercator : le premier élément par ordre alphabétique.
Il est parfois souhaitable de changer ce comportement. Cela peut se faire via la propriété DefaultIndexOrId du SearchPicker.
1. SearchPicker lié à un tableau de strings
<m:SearchPicker DefaultIndexOrId="2" BackgroundColor="White" TextColor="Black" SqlParam="@journal" HorizontalOptions="FillAndExpand">
<Picker.ItemsSource>
<x:Array Type="{x:Type x:String}">
<x:String>1Fact</x:String>
<x:String>1NCre</x:String>
<x:String>1FCmp</x:String>
</x:Array>
</Picker.ItemsSource>
</m:SearchPicker>
La valeur par défaut affichée sera bien 1FCmp, çàd la valeur d'index 2 (la première étant numérotée zéro).
2. SearchPicker lié à un tableau d'ItemDescriptors
<m:SearchPicker DefaultIndexOrId="valeur desc" BackgroundColor="White" TextColor="Black" SqlParam="$PARAM1$" HorizontalOptions="FillAndExpand" Margin="10, 10, 10, 0">
<Picker.ItemsSource>
<x:Array Type="{x:Type m:ItemDescriptor}">
<m:ItemDescriptor Id="passage desc" Lib="Trier par passage" />
<m:ItemDescriptor Id="valeur desc" Lib="Trier par CA" />
<m:ItemDescriptor Id="c_nom asc" Lib="Trier par nom" />
</x:Array>
</Picker.ItemsSource>
</m:SearchPicker>
La valeur par défaut affichée sera bien Trier par CA, çàd celle associée à l'id "valeur desc".
3. SearchPicker lié à une liste provenant de Mercator
<m:SearchPicker MercatorItemsSource="Rayons" DefaultIndexOrId="A86E5C6C5F" SqlParam="@id_rayon" BackgroundColor="White" TextColor="Black" HorizontalOptions="FillAndExpand" />
La valeur par défaut affichée sera le nom du rayon dont l'id est A86E5C6C5F.
Attention : si plusieurs déroulants sont coordonnés (par exemple : rayons / familles / sous-familles), il est nécessaire que les valeurs par défaut soient cohérentes et tiennent compte de l'arborescence de ces rayons, familles et sous-familles. Il convient, par exemple, d'éviter de fixer une valeur par défaut sur une famille, alors que celle-ci n'appartiendrait pas au rayon fixé par ailleurs.
MercatorPenguin : version min. = 2.2.1