다음을 통해 공유


방법: IScrollInfo 인터페이스를 사용하여 콘텐츠 스크롤

업데이트: 2007년 11월

이 예제에서는 IScrollInfo 인터페이스를 사용하여 콘텐츠를 스크롤하는 방법을 보여 줍니다.

예제

다음 예제에서는 IScrollInfo 인터페이스의 기능을 보여 줍니다. 예제에서는 부모 ScrollViewer에 중첩된 XAML(Extensible Application Markup Language)에 StackPanel 요소를 생성합니다. StackPanel의 자식 요소는 IScrollInfo 인터페이스로 정의된 메서드를 사용하여 논리적으로 스크롤할 수 있으며 코드에서 StackPanel(sp1)의 인스턴스로 캐스팅됩니다.

<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>

XAML 파일의 각 ButtonStackPanel의 스크롤 동작을 제어하는 연결된 사용자 지정 메서드를 트리거합니다. 다음 예제에서는 LineUpLineDown 메서드를 사용하는 방법을 보여 줍니다. 일반적으로 IScrollInfo 클래스가 정의하는 모든 위치 지정 메서드를 사용하는 방법을 보여 줍니다.

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();
}

전체 샘플을 보려면 IScrollInfo 메서드 샘플을 참조하십시오.

참고 항목

작업

IScrollInfo 메서드 샘플

개념

ScrollViewer 개요

Panel 개요

참조

ScrollViewer

IScrollInfo

StackPanel

기타 리소스

ScrollViewer 샘플

ScrollViewer 방법 항목