J'ai un ItemsControl avec le ItemTemplate suivant:Comment définir la hauteur des éléments en XAML afin qu'ils occupent toujours la même proportion d'espace disponible dans le parent ItemsControl?
<DataTemplate x:Key="myItemTemplate">
<TextBlock Height="???" Text="{Binding Path=Description}" />
</DataTemplate>
Ma question est, comment puis-je régler la hauteur du TextBlock dans le modèle afin qu'il assume automatiquement ItemsControl.Height div ItemsCount
l'espace vertical?
Quand il n'y a qu'un seul article, je voudrais que ce soit la hauteur totale du conteneur, lorsqu'il y en a deux, chacun devrait être la moitié de la taille, et ainsi de suite.
Si possible, je préférerais faire ceci complètement en XAML pour garder mon ViewModel propre de la logique d'IU.
En fait, c'est plus simple que ça. UniformGrid s'occupera automatiquement du nombre de lignes si vous définissez Columns = "1". Et vous devez utiliser ItemsControl.ItemsPanel à la place de ItemTemplate. –
Oh, c'est cool. Je ne savais pas à ce sujet. Merci pour le conseil! Et merci d'avoir souligné le "bug" dans mon exemple de code. J'ai accidentellement écrit "ItemTemplate" au lieu de "ItemsPanel". Fixé dans le message ci-dessus. – gehho