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