Я хочу разместить DataGrid внутри HeaderedContentControl, но DataGrid не получает вертикальную полосу прокрутки. Похоже, он имеет размеры, позволяющие удерживать все ряды одновременно, нижняя часть исчезает из поля зрения.
Если я помещаю тот же DataGrid в элемент Border, я получаю желаемое поведение.
Я сократил его до этого минимального примера:
<Grid>
<HeaderedContentControl Margin="10,10,10,161" >
<HeaderedContentControl.Header >test</HeaderedContentControl.Header>
<!-- I want it Here but then no Vertical Scroll-->
<DataGrid ItemsSource="{Binding Path=AllData}"
AutoGenerateColumns="True" />
</HeaderedContentControl>
<Border Margin="10,169,10,10">
<!--Here it does scroll -->
<DataGrid ItemsSource="{Binding Path=AllData}"
AutoGenerateColumns="True" />
</Border>
</Grid>
Несколько заметок:
- Не удалось заставить его работать с помощью HeaderedContentControl.VerticalContentAlignment
- эта проблема связана с этим вопросом но я думаю, что я немного ее расширил и что есть лучший ответ.
- использование ScrollViewer вокруг DataGrid не является решением, поскольку он прокручивает заголовок вне поля зрения.
- Я использую WPF4