使用正常的scrollanimation滚动到Scrollviewer中的某个位置

时间:2012-08-31 17:33:16

标签: c# xaml windows-8 microsoft-metro scrollview

我有一个带滚动浏览器的metro风格的应用程序。现在我想在用户点击按钮时滚动到某个位置。我试过了:

 MainScrollViewer.ScrollToHorizontalOffset(x);

然后它迅速“跳跃”。我想要一个平滑的动画,最多x。

2 个答案:

答案 0 :(得分:0)

没有开箱即用的API可以让你这样做。 您也无法使用动画进行定位。 您需要使用基于帧的动画(基本上找出您在时间轴和每个CompositionTarget.Rendering事件中的位置 - 更新偏移量)或创建一个附加的依赖项属性,当其值更改时调用ScrollToHorizo​​ntalOffset并使用动画。

答案 1 :(得分:0)

您可以创建一个运行异步的方法,并使用一个计时器来增加ScrollToHorizo​​ntalOffset(int x)。

每500毫秒说它增加10px。