Pourquoi WP7 ListPicker a-t-il des marges et une hauteur différentes par rapport à TextBox?

StackOverflow https://stackoverflow.com/questions/8892112

Question

J'ai une page dans mon application WP7 composée d'un TextBox à côté d'un ListPicker.Dans leurs modes par défaut, ils ne s'alignent pas correctement;le ListPicker a un remplissage différent du TextBox, et sa hauteur est également différente.

Image pour afficher le problème ListPicker

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <StackPanel Orientation="Horizontal">
        <TextBox HorizontalAlignment="Left" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top"/> 
        <toolkit:ListPicker Width="170" ItemsSource="{Binding l}" Style="{StaticResource ListPickerStyle1}" VerticalAlignment="Top"/>
    </StackPanel>
</Grid>

Ajuster manuellement le modèle du ListPicker pour qu'il s'intègre correctement ici est délicat et sujet aux erreurs.Par exemple, lorsque sa hauteur est ajustée, la légende (c'est-à-dire le texte de l'élément sélectionné) n'est plus au centre du composant.

Mon application échoue actuellement à l'examen de l'application MS car les composants ne sont pas tous de la même hauteur.

Y a-t-il un moyen facile pour moi de définir le toolkit:ListPicker pour qu'il ait la même apparence qu'un TextBox?

Était-ce utile?

La solution

La solution la plus simple sera de prendre une copie du style par défaut et de l'ajuster en utilisant Blend pour qu'il ressemble exactement à ce que vous voulez.Cela nécessitera quelques essais et erreurs.

Vous pouvez ensuite utiliser les règles de style implicites pour l'appliquer à tous les ListPickers sans avoir à définir explicitement le style sur chaque instance:

<Style x:Key="MyListPickerStyle
       TargetType="toolkit:ListPicker>
    .... your tweaks here
</Style>

<Style TargetType="toolkit:ListPicker"
       BasedOn="{StaticResource MyListPickerStyle}" />

Il peut être plus facile de modifier le style TextBox bien sûr :)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top