2011-01-28 2 views
1

В моем окне у меня есть сетка с двумя рядами. В первой строке у меня есть элемент управления вкладкой. Во втором ряду у меня есть ряд кнопок. Я хотел бы, чтобы вторая строка имела высоту примерно 30. Я бы хотел, чтобы первая строка потребляла остальную доступную высоту.WPF - Нужна помощь с Grid Row Heights

Поскольку пользователь меняет размер сетки вертикально, я бы хотел, чтобы вторая строка оставалась фиксированной на 30 и перемещалась с вертикальным изменением размера. Я бы хотел, чтобы первая строка уменьшалась или увеличивалась пропорционально вертикальному изменению размера.

В качестве примера скажем, что мое окно имеет начальную высоту 800. Моя вторая строка будет зафиксирована на 30, а моя первая строка будет потреблять разницу (~ 770). Теперь скажите, что пользователь изменяет размер окна по вертикали и уменьшает общую высоту до 600. Я все еще хочу видеть всю свою вторую строку в 30, но моя первая строка уменьшится до ~ 570.

Для чего я устанавливаю определения строк сетки для выполнения этого? Кажется, я не понимаю.

ответ

3

Установите высоту второго ряда на 30 и высоту первого ряда на *.

Кроме того, вместо фиксированной высоты для второго ряда используйте Auto для автоматической установки высоты.

Также изучите размеры звезд сетки в WPF.

2

Установите высоту первой строки на "*" (в xaml) и высоту второй строки до "30".

+0

Кроме того, если вы хотите, чтобы вторая строка просто подстраивалась под размер кнопок, вы можете установить высоту второй строки на «авто». – RQDQ

1
<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="*" /> 
     <RowDefinition Height="30" /> 
    </Grid.RowDefinitions> 
</Grid> 
Смежные вопросы