У меня есть текстовый блок в окне, которое содержится в просмотрщике прокрутки. Для текстового блока я установил перенос текста на «WrapWithOverflow». Кроме того, я привязал свойство ширины текстового блока к фактической ширине средства просмотра прокрутки.
Мое желаемое поведение заключается в том, что я могу изменить размер окна, и текстовый блок должен обернуть содержимое. Окно должно отображать полосы прокрутки только тогда, когда другие элементы управления (например, кнопки в примере xaml обрезаются)
Xaml:
<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<DockPanel Margin="5">
<StackPanel DockPanel.Dock="Top" Orientation="Horizontal">
<Button Content="First Button" Margin="0,0,10,0"/>
<Button Content="Second Button"/>
</StackPanel>
<DockPanel>
<TextBlock VerticalAlignment="Center" IsHitTestVisible="False" TextAlignment="Center" TextWrapping="WrapWithOverflow"
Width="{Binding RelativeSource={RelativeSource AncestorType=ScrollViewer}, Path=ActualWidth}" MaxWidth="260">
Just a small line<LineBreak />
This is the long line which will wrap during resize</TextBlock>
</DockPanel>
</DockPanel>
</ScrollViewer>
Но я вижу полосы прокрутки даже после того, как кнопки обрезаются , Я предполагаю, что это из-за поля в док-панели, которое требуется в моем случае.
![enter image description here](https://i.stack.imgur.com/2FzED.png)