【发布时间】:2014-01-08 17:46:08
【问题描述】:
得到了他的 XAML:
<Window x:Class="correctionTests.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Menu Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" IsMainMenu="True">
<MenuItem Header="_Ouvrir" Click="Open_Click"/>
</Menu>
<GroupBox Header="Tests : " VerticalAlignment="Top" Grid.Column="0" Grid.Row="1">
<ListBox HorizontalAlignment="Left" VerticalAlignment="Top" x:Name="testList"/>
</GroupBox>
<GridSplitter HorizontalAlignment="Right"
VerticalAlignment="Stretch"
Grid.Column="1"
Grid.Row="1"
Width="5"
Background="#FFBCBCBC"/>
<UserControl x:Name="userContent" Grid.Column="2" Grid.Row="1"/>
</Grid>
</Window>
现在的问题是,当我将 gridsplitter 拉到右侧时,第 0 列上的控件的大小正在减小,另一方面,当我将 gridsplitter 拉到左侧时,第 0 列的控件的大小正在增加.
我已经在堆栈上找到了这个link,它建议将第一列的宽度更改为自动。
问题是:如果我这样做,控件将不再调整大小。
我怎样才能让我的控件获得所有可用的宽度? (具有预期的 gridsplitter 行为)?
【问题讨论】:
-
如果您将第二列从 Auto 设置为固定宽度 (5) 并将
HorizontalAlignment/HorizontalContentAlignment=Stretch添加到Grid孩子们,你仍然得到同样的行为?抱歉,我只是没有时间测试。 -
遗憾的是它没有改变任何东西