这个问题很难简洁地描述,所以请耐心等待。
目前我有一个两行的网格。第一行的高度是Auto,第二行的高度是*,所以当我调整窗口大小时,第二行会根据窗口的大小进行放大和缩小。
这是基本布局:
<Window>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Border>
...
</Border>
<Border Grid.Row="2">
...
</Border>
</Grid>
</Window>
这是现有行为的简略草图:
____ ____ ____
-> ->
____ ____ ____
____
____
____
我想在第二行添加一种“最小高度”,这样当我将窗口调整到足够小时,第二行停止收缩,而第一行开始收缩。
期望的行为:
____ ____ ____
-> -> ____
____ ____
____
____
____
有没有一种简单的方法来获得第二行的最小高度,并强制第一行缩小?
更多细节:
当我在第二行设置 MinHeight 时,当我将其调整到低于该大小时,它只会剪切网格。
第一行中控件的大小在编译时是未知的,但在运行时是已知的。如果它是解决方案的必要部分,我可以设置行的 MaxHeight,但现在自动高度正在工作。
第二行中的控件没有明确的大小。允许调整它们的大小,但我试图防止它们变得小于所需的最小高度。