有没有办法确保Width="auto"
属性考虑Width
列表中所有元素的,而不是为列表中的每一行单独计算它?
<ListBox x:Name="listBox" HorizontalContentAlignment="Stretch" DockPanel.Dock="Top">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="0,0,0,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}" />
<TextBlock Grid.Column="1" Text="{Binding Value}" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我试过这个,但由于Name
每一列的长度不同,每一行Width
的Name
列的长度也不同。因此,第二列从不同的 x 位置开始。