C# WPF 网格行高度拉伸
C# WPF Grid Rows height stretch
我正在尝试创建一个随 window 大小动态增长的 WPF 视图。
我的示例代码显示了三个。
第一个要固定高度
第二个和第三个大小相同,并且始终是整个 window。
不幸的是,它不起作用。我究竟做错了什么? DockPanel 是否适合我的目的?
<Grid >
<Grid.RowDefinitions>
<RowDefinition Height="200"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<DockPanel Grid.Row="0">
<!-- Labels and Buttons -->
</DockPanel>
<DockPanel Grid.Row="1">
<ListView Margin="5"/>
</DockPanel>
<DockPanel Grid.Row="2">
<ListView Margin="5"/>
</DockPanel>
</Grid>
因为无法将此信息放入评论中。
您的布局仍然符合您的要求。
我设置了一些背景颜色来显示它。对我来说,这是一个简单的技巧来检查我的布局是否像我想要的那样展开。
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="200" />
<RowDefinition Height="1*" />
<RowDefinition Height="1*" />
</Grid.RowDefinitions>
<DockPanel Grid.Row="0"
Background="Yellow">
<!-- Labels and Buttons -->
</DockPanel>
<DockPanel Grid.Row="1"
Background="Aqua">
<ListView Margin="5"
Background="Gray" />
</DockPanel>
<DockPanel Grid.Row="2"
Background="Beige">
<ListView Margin="5"
Background="Bisque" />
</DockPanel>
</Grid>
如果您在 ListView
中看不到任何数据,那不是因为布局。您必须检查您的绑定。
提示
我建议您使用 Border
或 Grid
而不是 DockPanel
,因为您不需要 DockPanel
提供的功能。
我正在尝试创建一个随 window 大小动态增长的 WPF 视图。 我的示例代码显示了三个。
第一个要固定高度
第二个和第三个大小相同,并且始终是整个 window。
不幸的是,它不起作用。我究竟做错了什么? DockPanel 是否适合我的目的?
<Grid >
<Grid.RowDefinitions>
<RowDefinition Height="200"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<DockPanel Grid.Row="0">
<!-- Labels and Buttons -->
</DockPanel>
<DockPanel Grid.Row="1">
<ListView Margin="5"/>
</DockPanel>
<DockPanel Grid.Row="2">
<ListView Margin="5"/>
</DockPanel>
</Grid>
因为无法将此信息放入评论中。
您的布局仍然符合您的要求。 我设置了一些背景颜色来显示它。对我来说,这是一个简单的技巧来检查我的布局是否像我想要的那样展开。
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="200" />
<RowDefinition Height="1*" />
<RowDefinition Height="1*" />
</Grid.RowDefinitions>
<DockPanel Grid.Row="0"
Background="Yellow">
<!-- Labels and Buttons -->
</DockPanel>
<DockPanel Grid.Row="1"
Background="Aqua">
<ListView Margin="5"
Background="Gray" />
</DockPanel>
<DockPanel Grid.Row="2"
Background="Beige">
<ListView Margin="5"
Background="Bisque" />
</DockPanel>
</Grid>
如果您在 ListView
中看不到任何数据,那不是因为布局。您必须检查您的绑定。
提示
我建议您使用 Border
或 Grid
而不是 DockPanel
,因为您不需要 DockPanel
提供的功能。