public partial class Example : UserControl
{
private ScrollViewer myScrollViewer;
public Example()
{
InitializeComponent();
}
private void ScrollViewer_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
myScrollViewer = (sender as ScrollViewer);
ScrollBar verticalScrollBar = myScrollViewer.Template.FindName("PART_VerticalScrollBar", myScrollViewer) as ScrollBar;
verticalScrollBar.SmallChange = 5;
}
private void LeftArrow_Click(object sender, System.Windows.RoutedEventArgs e)
{
myScrollViewer.LineLeft();
}
private void RightArrow_Click(object sender, System.Windows.RoutedEventArgs e)
{
myScrollViewer.LineRight();
}
}
// 获取或设置范围控件的当前数量。
verticalScrollBar.SmallChange = 5;//偏移5个元素
myScrollViewer.LineLeft();//触发偏移。。显示下5个元素。
//这个没有下面方式灵活,下面可以指定便宜到哪个位置。
还可以根据ListBox中ItemsPanel里的StackPanel的TranslateTransform来做偏移。
//代码没有,有需求的人比较少,,有的话可以回复我给你。