Вам не нужно использовать фиксированные значения для Width
и Height
- вам лучше указать минимальную ширину / высоту для ваших элементов управления, используя свойства MinWidth
и MinHeight
. Затем попробуйте макет, похожий на этот:
<Window>
<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<Grid>
<ListBox MinWidth="500" MinHeight="250"/>
<!-- any other controls... -->
</Grid>
</ScrollViewer>
</Window>
Grid
обычно использует все пространство, которое получает, если его свойства выравнивания установлены на Stretch
и если хотя бы для одной строки / столбца установлено значение звездного размера . В этом случае неявно создается только одна строка и один столбец, оба по умолчанию имеют размер звезды.
Чтобы заставить ScrollViewer
работать, вам нужно каким-то образом установить минимальный размер ваших элементов управления контентом, поскольку в противном случае ScrollViewer
не не знает , когда активировать ScrollBar
s. В приведенном выше примере я сделал это, используя MinHeight
и MinWidth
свойства ListBox
, но вы также можете установить эти свойства для Grid
'RowDefinition
s и / или ColumnDefinition
s. .
Теперь, если вы измените размер окна, так что Width
станет меньше, чем 500
, вы увидите, что появятся полосы прокрутки. Просто проверьте это.