How to: Use the Content-Scrolling Methods of ScrollViewer

This example shows how to use the scrolling methods of the ScrollViewer element. These methods provide incremental scrolling of content, either by line or by page, in a ScrollViewer.

The following example creates a ScrollViewer named sv1, which hosts a child TextBlock element. Because the TextBlock is larger than the parent ScrollViewer, scroll bars appear in order to enable scrolling. Button elements that represent the various scrolling methods are docked on the left in a separate StackPanel. Each Button in the XAML file calls a related custom method that controls scrolling behavior in ScrollViewer.

<StackPanel DockPanel.Dock="Left" Width="150">
  <Button Margin="3,0,0,2" Background="White" Click="svLineUp">Adjust Line Up</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svLineDown">Adjust Line Down</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svLineRight">Adjust Line Right</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svLineLeft">Adjust Line Left</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svPageUp">Adjust Page Up</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svPageDown">Adjust Page Down</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svPageRight">Adjust Page Right</Button>
  <Button Margin="3,0,0,2" Background="White" Click="svPageLeft">Adjust Page Left</Button>
  <TextBlock Name="txt2" TextWrapping="Wrap"/>
</StackPanel>

<Border BorderBrush="Black" Background="White" BorderThickness="2" Height="520" Width="520" VerticalAlignment="Top">
  <ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Auto" Name="sv1">
    <TextBlock TextWrapping="Wrap" Width="800" Height="1000" Name="txt1"/> 
  </ScrollViewer>
</Border>

The following example uses the LineUp and LineDown methods.

private void svLineUp(object sender, RoutedEventArgs e)
{
    sv1.LineUp();
}
private void svLineDown(object sender, RoutedEventArgs e)
{
    sv1.LineDown();
}
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft