Partilhar via


Como: Usar os métodos de rolagem de conteúdo do ScrollViewer

Este exemplo mostra como usar os métodos de rolagem do elemento ScrollViewer. Esses métodos fornecem rolagem incremental do conteúdo, seja por linha ou por página, em um ScrollViewer.

Exemplo

O exemplo a seguir cria um ScrollViewer chamado sv1, que hospeda um elemento filho TextBlock. Como o TextBlock é maior do que o ScrollViewerpai, as barras de rolagem aparecem para habilitar a rolagem. Button elementos que representam os vários métodos de deslocação são encaixados à esquerda em um StackPanelseparado. Cada Button no arquivo XAML chama um método personalizado relacionado que controla o comportamento de rolagem no 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>

O exemplo a seguir usa os métodos LineUp e LineDown.

private void svLineUp(object sender, RoutedEventArgs e)
{
    sv1.LineUp();
}
private void svLineDown(object sender, RoutedEventArgs e)
{
    sv1.LineDown();
}
Private Sub svLineUp(ByVal sender As Object, ByVal args As RoutedEventArgs)

    sv1.LineUp()
End Sub
Private Sub svLineDown(ByVal sender As Object, ByVal args As RoutedEventArgs)

    sv1.LineDown()
End Sub

Ver também