如何在Windows中重新调整窗口大小时让List-views自动调整高度

时间:2015-06-30 18:19:23

标签: c# wpf listview height gridsplitter

我无法让两个ListView将其高度调整到包含窗口。我在它们之间使用GridSplitter。当我拖动GridSplitter时,我希望一个ListView缩小,一个增长。

这是剥离的xaml代码。

<Grid x:Name="Gridthing">
        <Grid.RowDefinitions>
            <RowDefinition Height="150"/>
            <RowDefinition Height="10"/>
            <RowDefinition Height="150"/> <!--bottom-->
        </Grid.RowDefinitions>
            <ListView  Name="Things1" Grid.Row="0"/>
            <GridSplitter Grid.Row="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Background="LightGray"></GridSplitter>
            <ListView  Name="Things2" Grid.Row="2"/>
</Grid>

然而,在这个例子中,底部的ListView总是150高,无论窗口的大小也是如此。

现在我已经可以听到一千个声音尖叫使用“*”或“自动”作为底部网格行的高度。

然而,这是一个更糟糕的问题。底部ListView现在扩展通过窗口并且没有滚动条,渲染不在窗口中的任何内容都不可见。

我正在寻找一种方法,允许两个ListView占用窗口中的所有空间,中间有一个GridSplitter,并始终显示滚动条。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

问题是我的网格位于主窗口内的stackpannel内的用户控件中。我不得不在主窗口中换出stackpannel用于网格,然后它完美地执行。谢谢dkozl。