WPF网格未垂直拉伸

问题描述 投票:6回答:2

我在主窗口中有以下Grid

<Grid Name="gridMain" Width="Auto" VerticalAlignment="Stretch" Height="Auto">
</Grid>

我正在网格中动态添加UserControl。主窗口只有这个网格。我希望网格在水平和垂直方向都可以拉伸,并且应该填满整个窗口。网格在水平延伸,但不垂直延伸。知道为什么吗?我需要怎么做才能使网格垂直拉伸?

编辑

这里是完整的XAML。

<Window x:Class="Sensitech.TurboValidator.UserControls.ConveyorBelt"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="ConveyorBelt" Height="329" Width="714" xmlns:my="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit">
    <Grid Name="gridMain" Width="Auto" VerticalAlignment="Stretch" Height="Auto" Background="Cyan">

    </Grid>
</Window>
c# wpf user-interface grid
2个回答
14
投票

尝试将行高设置为*

<Grid Name="gridMain" >    
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
</Grid>

类似地定义ColumnDefinition并将Width设置为*

还要确保网格不是用户控件不能拉伸的网格。您可以通过为Grid分配一些背景色来轻松地做到这一点。


0
投票

xaml中有一个SizeChanged事件例如SizeChanged =“ WindowSizeChanged”使用此控件可根据窗口大小将控件的大小调整为所需的大小。

    private void WindowSizeChanged(object sender, SizeChangedEventArgs e)
    {
        Grid1.Height = this.ActualHeight - 40;
    }

“如果您告诉降落伞由xaml设计师打包,您是否会从飞机上跳下来?”

© www.soinside.com 2019 - 2024. All rights reserved.