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;
  }

Ответы (0 шт):