Je possède ce code:Quelques questions WPF de Font_Combobox
<ComboBox Width="100" ItemsSource="{Binding FontList}" x:Name="fontComboFast">
<ComboBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel />
</ItemsPanelTemplate>
</ComboBox.ItemsPanel>
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" FontFamily="{Binding }" FontSize="12" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Il y a 3 gotchas dans ce Combobox.
- Les éléments/polices ont une hauteur différente
- Quand je défiler vers le haut/bas la scrollviewer`s largeur augmente/diminue en fonction de la longueur du plus long élément visible dans le ScrollViewer. Comment puis-je définir une largeur fixe?
- Les polices alias TextBlocks ne sont pas centrées verticalement
Comment puis-je changer ces 3 choses?
MISE À JOUR:
<ComboBox AlternationCount="2" Width="200" ItemContainerStyle="{StaticResource alternateColor}" ItemsSource="{Binding Source={x:Static Member=Fonts.SystemFontFamilies}}" x:Name="fontComboFast">
<Style x:Key="alternateColor" TargetType="{x:Type ComboBoxItem}">
<Style.Setters>
<Setter Property="Height" Value="30" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="FontSize" Value="16" />
</Style.Setters>
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="LightGray"/>
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="AliceBlue"/>
</Trigger>
</Style.Triggers>
</Style>
Hm 2 de 3 réponses avaient raison et ils ont été les plus faciles est-ce maintenant une solution? : O Vous avez des astuces de combobox en magasin? Alors je marquerais cela comme solution sinon vous obtenez un point ;-)
btw. Félicitations à votre nouveau travail wpf lu sur votre blog, je vous envie!
1b.worked PAS 2a.worked 3..worked – Elisabeth
Je posterai une image ici, donc vous savez ce que je veux dire et que vous voyez la mauvaise conduite: http://666kb.com/i/bm0et3s0n9atkmzol.png – Elisabeth
ok je l'ai eu voir ma mise à jour init post. – Elisabeth