Comment : utiliser les méthodes de défilement du contenu de ScrollViewer
Mise à jour : novembre 2007
Cet exemple montre comment utiliser les méthodes de défilement de l'élément ScrollViewer. Ces méthodes fournissent un défilement incrémentiel du contenu, par ligne ou par page, dans un ScrollViewer.
Exemple
L'exemple suivant crée un ScrollViewer nommé sv1 qui héberge un élément TextBlock enfant. Étant donné que le TextBlock est plus grand que le ScrollViewer parent, des barres de défilement apparaissent pour permettre le défilement. Les éléments Button qui représentent les diverses méthodes de défilement sont ancrés sur la gauche dans un StackPanel séparé. Chaque Button du fichier XAML (Extensible Application Markup Language) déclenche une méthode personnalisée associée qui contrôle le comportement de défilement dans 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>
L'exemple suivant utilise les méthodes LineUp et 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
private void svLineUp(object sender, RoutedEventArgs e)
{
sv1.LineUp();
}
private void svLineDown(object sender, RoutedEventArgs e)
{
sv1.LineDown();
}
Pour l'exemple complet, consultez Défilement du contenu dans un ScrollViewer, exemple.