Некоторые элементы управления WPF (например, Button), похоже, с удовольствием потребляют все доступные пространства в своем контейнере, если вы не указали высоту, которую он должен иметь.
И некоторые, как те, которые мне нужно использовать прямо сейчас, (многострочные) TextBox и ListBox кажутся более тревожными, просто занимая пространство, необходимое для их содержимого, и не более того.
Если вы разместите этих парней в ячейке в UniformGrid, они будут расширяться, чтобы соответствовать доступному пространству. Однако экземпляры UniformGrid не подходят для всех ситуаций. Что делать, если у вас есть сетка с несколькими строками, установленными на высоту *, чтобы разделить высоту между собой и другими * строками? Что, если у вас есть StackPanel, и у вас есть Label, a List и Button, как вы можете получить список, чтобы занять все пространство, не съеденное ярлыком и кнопкой?
Я бы подумал, что это действительно будет основным требованием к макету, но я не могу понять, как заставить их заполнить пространство, которое они могли бы (помещая их в DockPanel и устанавливать его для заполнения также не кажется, работает, поскольку DockPanel занимает только пространство, необходимое для его "субконтроля".
Изменчивый GUI был бы ужасно, если бы вам пришлось играть с Height, Width, MinHeight, MinWidth и т.д.
Можете ли вы привязать свои свойства Height и Width к ячейке сетки, которую вы занимаете? Или есть другой способ сделать это?