Procedura: Usare i metodi di scorrimento del contenuto di ScrollViewer
In questo esempio viene illustrato come utilizzare i metodi di scorrimento dell'elemento ScrollViewer. Questi metodi forniscono lo scorrimento progressivo del contenuto, sia per riga sia per pagina, in un ScrollViewer.
Esempio
Nell'esempio seguente viene creato un ScrollViewer denominato sv1
, che ospita un elemento figlio TextBlock. Poiché il TextBlock è maggiore del ScrollViewerpadre, vengono visualizzate le barre di scorrimento per consentire lo scorrimento.
Button elementi che rappresentano i vari metodi di scorrimento sono ancorati a sinistra in un StackPanelseparato. Ogni Button nel file XAML chiama un metodo personalizzato correlato che controlla il comportamento di scorrimento 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>
Nell'esempio seguente vengono utilizzati i metodi 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
Vedere anche
.NET Desktop feedback