Silverlight:使用Scrollviewer自动滚动

时间:2009-12-23 19:09:58

标签: silverlight silverlight-3.0

我有一个包含动态内容的滚动查看器。在某个事件中,新内容可见,并显示滚动条。如何使其自动滚动以查看该内容?

谢谢, 肖恩麦克莱恩

2 个答案:

答案 0 :(得分:3)

使用ScrollToVerticalOffset()执行此操作,传递新内容的坐标。

var newContent = GetNewContent();

var generalTransform = newContent.TransformToVisual(
    Application.Current.RootVisual as UIElement);

Point offset = generalTransform.Transform(new Point(0, 0));
double controlTop = offset.Y;
double controlLeft = offset.X;

scrollViewer.ScrollToVerticalOffSet(controlTop);
scrollViewer.ScrollToHorizontalOffSet(controlLeft);

答案 1 :(得分:1)

你确定Scrollviewer是你需要的控件吗?

听起来像你应该使用ListBox(如果需要你可以大量设计)。它有ScrollIntoView(item)方法可以实现您的目标。