如何设置GridSplitter“窗格”的初始高度?

问题描述

| 我在WPF窗口中使用了GridSplitter。拆分器上方是一个TreeView,下方是一个DockPanel,其中包含一个文本框。当我在TreeView中选择一个项目时,DockPanel的内容将通过数据绑定进行更新。 根据文本框的内容,窗口的下部窗格会扩展并收缩大小。我希望它从高度X开始,并保持在该高度,除非GridSplitter被用户拖动。 我尝试在XAML中设置下部DockPanel的高度,但这可以修复DockPanel的高度,以便在移动GridSplitter时不调整其大小。也许解决方案涉及Grid.Row Heights? 这是我页面的一般结构。
Window
  Grid
    row1 Height=\"*\":    TreeView
    row2 Height=\"5\":    GridSplitter
    row3 Height=\"auto\": DockPanel  // gets taller and shorter depending on its content.
      ...
      TextBox
顺便说一句:在我拖动GridSplitter之后,调整大小停止发生,并且UI表现出我想要的样子。     

解决方法

显式设置要具有初始大小的网格行的ѭ1.。 现在,row3在ѭ2上,并调整大小到内容,只要拖动GridSplitter,该值就会被当前行的高度替换。