J'ai un ListBox qui est lié à une liste de Personnes. Je veux montrer les éléments de la listbox dans une grille. Je peux accomplir ceci avec le code ci-dessous, mais le problème est que avec ce code chaque article a sa propre grille. Je souhaite qu'une grille contienne tous les éléments afin que chaque colonne de la grille soit automatiquement mise à l'échelle de la largeur de la chaîne la plus longue. Je suppose que je devrais lier les données à une grille à la place? Comment?Définir une grille pour contenir tous les éléments d'un ListBox au lieu d'une grille pour chacun utilisant un DataTemplate
<ListBox ItemsSource="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{Binding Path=Name}" />
<TextBlock Grid.Column="1" Text="{Binding Path=Age}" />
<TextBlock Grid.Column="2" Text="{Binding Path=Gender}" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>