WPF网格行最大高度,但可通过GridSplitter调整大小

WPF网格行最大高度,但可通过GridSplitter调整大小,wpf,grid,expander,gridsplitter,Wpf,Grid,Expander,Gridsplitter,我想在底部有一个扩展器,可以通过网格拆分器调整大小 但内容中没有自动高度(因为包含的数据网格需要整个窗口) 决议是什么 我的代码: <Expander Grid.Row="1" ExpandDirection="Up" IsExpanded="True"> <Grid> <Grid.RowDefinitions> <RowDefinition MinHeigh

我想在底部有一个扩展器,可以通过网格拆分器调整大小

但内容中没有自动高度(因为包含的数据网格需要整个窗口)

决议是什么

我的代码:

<Expander Grid.Row="1" ExpandDirection="Up" IsExpanded="True">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition MinHeight="4" />
                    <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <GridSplitter Grid.Row="0" Height="4" ResizeDirection="Rows"
                                                HorizontalAlignment="Stretch" VerticalAlignment="Top" ResizeBehavior="CurrentAndNext"/>
                <DataGrid .../>
            </Grid>


我还尝试设置行定义的最大高度-->调整GridSplitter的大小后,内容将不会拉伸。

我使用了以下代码来解决此问题:

<Grid>.RowDefinitions[1].Height = new GridLength(100, GridUnitType.Pixel);
.RowDefinitions[1]。高度=新的GridLength(100,GridUnitType.Pixel);

如果要调整扩展器的大小,为什么要将GridSplitter放在扩展器内容中?请研究控件的行为以及如何在UI上排列控件。GridSplitter位于Expander内容中,因为扩展的Expander的内容应可调整大小。按下扩展器后,内容应该被折叠。请阅读一些关于WPF控件如何工作的WPF好书。很好的帮助,可能有一个属性需要设置。。。