Я использую GridSplitter в моем окне WPF. Над сплиттером находится TreeView, ниже DockPanel, который содержит, помимо прочего, текстовое поле. Когда я выбираю элемент в TreeView, содержимое DockPanel обновляется с помощью привязки данных.
В зависимости от содержимого TextBox нижняя панель окна расширяется и сжимается в размере. Я хочу, чтобы он начинался с высоты X и оставался на этой высоте, если пользователь не перетаскивает GridSplitter.
Я попытался установить высоту нижней DockPanel в XAML, но это фиксирует высоту 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, изменение размера прекращается, и пользовательский интерфейс ведет себя так, как я хочу.