我无法正确对齐列表框的内容。我有以下 XAML。基本上,我试图展示一些列表框,每个列表框都在自己的标题下。我还附上截图。如您所见,只有具有最长 TextBlock 的 ListBox 的 X 按钮才能正确对齐。我试过 HorizontalContentAlignment="Stretch",但没用。我还仔细检查了我所包含的 ListBox、ListBoxItem 和 GroupBox 样式没有做任何奇怪的事情。我基本上已经删除了所有样式,问题仍然存在。有任何想法吗?我对任何想法持开放态度,包括改变我的 XAML。
<ItemsControl Grid.Row="0" ItemsSource="{Binding Path=Items}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<GroupBox Header="{Binding Path=CategoryName}">
<ListBox Grid.IsSharedSizeScope="True" ItemsSource="{Binding Path=Items}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="15" SharedSizeGroup="Col1"/>
<ColumnDefinition Width="Auto" SharedSizeGroup="Col2"/>
<ColumnDefinition Width="Auto" SharedSizeGroup="Col3"/>
<ColumnDefinition Width="11" SharedSizeGroup="Col4"/>
</Grid.ColumnDefinitions>
<Path Grid.Column="0" Visibility="{Binding Path=IsChecked, Mode=OneWay, Converter={StaticResource BooleanToVisibilityConverter}}" Stroke="{StaticResource Green06Brush}" StrokeThickness="2" SnapsToDevicePixels="False" Data="M 1 6 L 4 9 L 10 1" Margin="0.6,0.6,0.6,0.6" ClipToBounds="true" StrokeEndLineCap="Flat" StrokeStartLineCap="Flat"/>
<TextBlock Grid.Column="1" Text="{Binding Path=Symbol}" HorizontalAlignment="Left" Margin="2,0,10,0"/>
<TextBlock Grid.Column="2" Text="{Binding Path=Name}" HorizontalAlignment="Left" Margin="0,0,10,0"/>
<fpp:ImageButton Grid.Column="3" RenderOptions.BitmapScalingMode="NearestNeighbor" Source="Images/Clear_X.png" MouseOverSource="Images/Clear_X_On.png" DisabledSource="Images/Clear_X_Disabled.png" HorizontalAlignment="Right" VerticalAlignment="Center" Click="ClickRemoveTicker"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListBox>
</GroupBox>
</DataTemplate>
</ItemsControl.ItemTemplate>
原始截图
更新截图