我在主窗口中有以下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>
尝试将行高设置为*
<Grid Name="gridMain" >
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
</Grid>
类似地定义ColumnDefinition并将Width设置为*
还要确保网格不是用户控件不能拉伸的网格。您可以通过为Grid分配一些背景色来轻松地做到这一点。
xaml中有一个SizeChanged事件例如SizeChanged =“ WindowSizeChanged”使用此控件可根据窗口大小将控件的大小调整为所需的大小。
private void WindowSizeChanged(object sender, SizeChangedEventArgs e)
{
Grid1.Height = this.ActualHeight - 40;
}
“如果您告诉降落伞由xaml设计师打包,您是否会从飞机上跳下来?”