Я ищу макет WPF, который работает как панель горизонтальных стеков, чтобы элементы выбирали свою собственную идеальную ширину, когда для них достаточно места, но дополнительно сдавливали элементы равномерно, когда они не помещались вдоступное пространство на панели.
С этим я могу приблизиться к тому, что хочу:
<Grid Width="400" Height="80">
<UniformGrid Rows="1" HorizontalAlignment="Left">
<Button Content="Long Button" />
<Button Content="Very Long Button" />
<Button Content="Button" />
<Button Content="Button" />
<Button Content="Button" />
</UniformGrid>
</Grid>
Проблема в том, что UniformGrid
сохраняет все кнопки одинаковой ширины.
Если я заменим UniformGrid
на StackPanel
, то размер элементов будет корректным, но когда они превысят максимальный размер, до которого StackPanel
может увеличиться (благодаря своему фиксированному родительскому размеру), они обрезаютсявместо того, чтобы быть вынужденным в меньшую область.
Итак, есть ли способ получить желаемое поведение с помощью готовых панелей?