Share via


Gewusst wie: Durchführen eines Bildlaufs von Inhalten mithilfe der IScrollInfo-Schnittstelle

Aktualisiert: November 2007

Dieses Beispiel veranschaulicht, wie mithilfe der IScrollInfo-Schnittstelle ein Bildlauf durch Inhalte durchgeführt wird.

Beispiel

Im folgenden Beispiel werden die Features der IScrollInfo-Schnittstelle veranschaulicht. Im Beispiel wird ein StackPanel-Element in Extensible Application Markup Language (XAML) erstellt, das in einem übergeordneten ScrollViewer geschachtelt ist. In den untergeordneten Elementen von StackPanel kann ein logischer Bildlauf mithilfe der Methoden durchgeführt werden, die in der IScrollInfo-Schnittstelle definiert sind. In Code können die untergeordneten Elemente in eine Instanz von StackPanel (sp1) umgewandelt werden.

<Border BorderBrush="Black" Background="White" BorderThickness="2" Width="500" Height="500">
    <ScrollViewer Name="sv1" CanContentScroll="True" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible">
        <StackPanel Name="sp1">
            <Button>Button 1</Button>
            <Button>Button 2</Button>
            <Button>Button 3</Button>
            <Button>Button 4</Button>
            <Button>Button 5</Button>
            <Rectangle Width="700" Height="500" Fill="Purple"/>
            <TextBlock>Rectangle 1</TextBlock>
            <Rectangle Width="700" Height="500" Fill="Red"/>
            <TextBlock>Rectangle 2</TextBlock>
            <Rectangle Width="700" Height="500" Fill="Green"/>
            <TextBlock>Rectangle 3</TextBlock>
        </StackPanel> 
    </ScrollViewer>
</Border>

Jede Button der Datei XAML löst eine zugeordnete benutzerdefinierte Methode aus, durch die das Bildlaufverhalten in StackPanel gesteuert wird. Das folgende Beispiel veranschaulicht die Verwendung der Methoden LineUp und LineDown. Außerdem wird die übliche Verwendung aller Positionierungsmethoden dargestellt, die in der IScrollInfo-Klasse definiert werden.

Private Sub spLineUp(ByVal sender As Object, ByVal args As RoutedEventArgs)

    CType(sp1, IScrollInfo).LineUp()
End Sub
Private Sub spLineDown(ByVal sender As Object, ByVal args As RoutedEventArgs)

    CType(sp1, IScrollInfo).LineDown()
End Sub
private void spLineUp(object sender, RoutedEventArgs e)
{
    ((IScrollInfo)sp1).LineUp();
}
private void spLineDown(object sender, RoutedEventArgs e)
{
    ((IScrollInfo)sp1).LineDown();
}

Das vollständige Beispiel finden Sie unter Beispiel für IScrollInfo-Methoden.

Siehe auch

Aufgaben

Beispiel für IScrollInfo-Methoden

Konzepte

Übersicht über ScrollViewer

Übersicht über Panel-Elemente

Referenz

ScrollViewer

IScrollInfo

StackPanel

Weitere Ressourcen

Beispiele zu ScrollViewer

Gewusst-wie-Themen zu ScrollViewer