J'ai un ListBox
avec un ItemTemplate
consistant en un TextBlock
et un ComboBox
. Le problème est que la largeur du texte à l'intérieur des TextBlock
n'est pas la même pour chaque élément et que les contrôles ComboBox
ne sont pas alignés.
Comment puis-je définir les TextBlock
dans le modèle afin que tous les éléments aient la même largeur, c'est-à-dire l'un des plus larges?
Voici mon xaml:
<ListBox MinHeight="100" ItemsSource="{Binding Trainees}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="1">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock VerticalAlignment="Center" Grid.Column="0">
<TextBlock.Text>
<MultiBinding StringFormat="{}{0}, {1}">
<Binding Path="LastName" />
<Binding Path="FirstName" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
<ComboBox HorizontalAlignment="Left" Grid.Column="1"
ItemsSource="{Binding Source={StaticResource Functions}}" SelectedValue="{Binding Path=Function}"
MinWidth="100" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>