我有以下 XAML:
<Window x:Class="MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock Text="0,0" Grid.Column="0" Background="Yellow" />
<TextBlock Text="1,0" Grid.Column="1" Background="SkyBlue" />
<GridSplitter Width="20" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Stretch" ShowsPreview="True" />
<TextBlock Text="3,0" Grid.Column="3" Grid.Row="0" />
</Grid>
</Window>
当只有一个ColumnDefinition
带有Width
ofAuto
时,GridSplitter
工作正常。但是,一旦有多个带有 aWidth
的列Auto
,第一Auto
列也会在GridSplitter
移动时调整大小(可以在 cell 中看到1,0
)。
调整大小之前:
调整大小后:
如何防止 GridSplitter 调整第二列的大小?