WPF ScrollViewer авторазмер с прокруткой
Разбираюсь с WPF и столкнулся с проблемой с элементом ScrollViewer, внутри отображается PDF, при загрузке документа высота вложенного в ScrollViewer элемента становится равной высоте PDF.
PdfViewer.Height = высота документа.
Если в ScrollViewer указать фиксированный размер все работает нормально документ внутри прокручивается, но если поставить авторазмер то прокрутка пропадает, как я понимаю элемент растягивается за пределы экрана.
<RowDefinition Height="auto"></RowDefinition>
<ScrollViewer Grid.Row="1" VerticalAlignment="Stretch">
<Wpf:PdfViewer x:Name="PdfViewer" Visibility="Hidden"/>
</ScrollViewer>
В общем решил проблему, если вдруг кому нибудь понадобится: Добавляем событие SizeChanged
SizeChanged="scrPDF_SizeChanged"
И меняем размер ScrollViewer'а с вычетом размера других элементов,что бы не перекрывались.
private void scrPDF_SizeChanged(object sender, SizeChangedEventArgs e)
{
if (e.NewSize.Height >= 0) scrPDF.Height = this.ActualHeight - 200;
}