Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przykładzie pokazano, jak przewijać zawartość przy użyciu interfejsu IScrollInfo.
Przykład
W poniższym przykładzie przedstawiono funkcje interfejsu IScrollInfo. W przykładzie zostanie utworzony element StackPanel w języku XAML (Extensible Application Markup Language), który jest zagnieżdżony w elemencie nadrzędnym ScrollViewer. Elementy podrzędne StackPanel można przewijać logicznie przy użyciu metod zdefiniowanych przez interfejs IScrollInfo i rzutować do wystąpienia StackPanel (sp1
) w kodzie.
<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>
Każda Button w pliku XAML wyzwala daną skojarzoną metodę niestandardową, która kontroluje zachowanie przewijania w StackPanel. W poniższym przykładzie pokazano, jak używać metod LineUp i LineDown; Ogólnie pokazuje również, jak używać wszystkich metod pozycjonowania definiowanych przez klasę IScrollInfo.
private void spLineUp(object sender, RoutedEventArgs e)
{
((IScrollInfo)sp1).LineUp();
}
private void spLineDown(object sender, RoutedEventArgs e)
{
((IScrollInfo)sp1).LineDown();
}
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
Zobacz także
.NET Desktop feedback