2011-04-14 77 views
7

我在我的WPF窗口中使用GridSplitter。分離器上面是一個TreeView,下面是一個DockPanel,其中包含一個文本框。當我在TreeView中選擇一個項目時,DockPanel的內容通過數據綁定進行更新。如何設置GridSplitter'窗格'的初始高度?

根據文本框的內容,窗口的下部窗格展開和縮小。我希望它從高度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 

BTW:我拖着GridSplitter後,調整大小停止發生和UI表現如何我想它。

回答

8

顯式設置您想要具有初始大小的網格行的Height

現在row3在Auto上,並且只要您將GridSplitter的值改爲行的當前高度,就調整爲內容大小。

相關問題