wpf,ListBox,ScrollViewer内容向左向右偏移指定位置

	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来做偏移。
//代码没有,有需求的人比较少,,有的话可以回复我给你。
posted @ 2015-06-23 16:20  莫欺  阅读(1845)  评论(0编辑  收藏  举报