我正在WPF中创建一个简单的GUI:
我已经将三个GUI元素排列在一个网格中。 调整窗口大小时,我希望第一列和最后一列的宽度保持不变,而中间一列的大小则采用所有剩余宽度。 不幸的是,当我使窗口变窄时;该按钮被隐藏了:
我在这里做什么错了?
<Grid>
<Grid Margin="10,0,10,10" MinWidth="200">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="85" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*" />
</Grid.RowDefinitions>
<Button Content="Select..." Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Stretch" Width="75" MinWidth="75"/>
<TextBox Margin="0,0,0,0" TextWrapping="Wrap" Text="" Width="Auto" Height="20" Grid.Column="1"/>
<Label Content="File path:" HorizontalAlignment="Center" Margin="0,0,0,0" VerticalAlignment="Center"/>
</Grid>
答案 0 :(得分:1)
如果不应将窗口的大小调整为小于某个宽度,请在“窗口”属性中进行定义。
如果要在窗口变得小于特定大小(网格大小)时显示ScrollViewer,则添加ScrollViewer
编辑:
您可以做的是绑定窗口。MinWidth=网格的实际宽度。
为网格命名:
<Grid x:Name="MyGrid">
然后像这样绑定窗口中宽度:
MinWidth="{Binding ElementName=MyGrid, Path=ActualWidth, Mode=OneTime}"