WPF布局网格布局任何大小的行但具有最小高度

时间:2015-11-04 05:49:57

标签: c# wpf

您好我是XAML的新手,我无法想象如何创建此布局。

所以想象一下带有标题,主区域和页脚的布局。每个区域都只是一个图像控件。

我正在使用网格定义:

    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

因此所有空白区域都被主区域用尽了。这对于纵向窗口很有用,但是当窗口调整为风景时。页脚和页眉占用了所有空间,主区域几乎没有左侧,因为没有空间,我无法看到主区域的图像。

那么可以指定主区域的最小高度吗?我尝试将MinHeight用于主区域的图像控制,但没有区别。我希望通过指定最小高度,这将强制页眉和页脚区域更小,因此这些图像将缩放以保持纵横比,因此它们的宽度也将变小。希望这是有道理的。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

当您为行{或}列分别指定*Height时,请告诉他们在其他计算后将%留下。如果您有两列Width*,则每列占左侧空间的50%。

当您指定Width时,它会考虑内部控件的大小。

行和列定义有属性Auto

所以你可以尝试设置主行的MinHeight,但我认为它可能不起作用,你也可以指定标题和页脚行中元素的大小具有一定的大小(你只能在横向模式下进行,并将其保留为纵向)

修改 - 添加了参考链接

GridLength Structure

GridUnitType Enumeration

  • 自动 - 大小由内容对象的大小属性决定。
  • 像素 - 值以像素表示。
  • Star - 该值表示为可用空间的加权比例。