隐藏DockPanel &调整大小

本文关键字:调整 DockPanel 隐藏 | 更新日期: 2023-09-27 18:14:57

<DockPanel>           
      <TreeView DockPanel.Dock="Bottom" />
      <DataGrid DockPanel.Dock="Bottom" Visibility="Collapsed"/>
</DockPanel>

基本上,我希望第一个TreeView填充第二个DataGrid在"崩溃"时占用的剩余空间。

如果我将第一个树视图设置为"折叠",我希望第二个树视图在设置为"可见"时高度增长。

这不起作用,由于LastChildFill。但是,即使我把它设为false,当一个元素被折叠时,我也不能让元素适合。我不能在这里使用stackpanel,因为stackpanel完全忽略控件内的空闲空间,所以它永远不会填充我的窗口!

隐藏DockPanel &调整大小

我用

<DockPanel>
      <Grid>
          <TreeView DockPanel.Dock="Bottom" />
          <DataGrid DockPanel.Dock="Bottom" Visibility="Collapsed"/>
      </Grid>
</DockPanel>

当我想交换时,我切换DataGrid和TreeView的可见性。我没有想到网格,因为我不认为网格会变成窗户的形状。如果你在没有DockPanel的情况下单独做这件事,你会得到一个数据网格,它会在屏幕外无限延伸。但是DockPanel将LastFillChild应用于Grid,并且固有地应用于子元素。