代码之家  ›  专栏  ›  技术社区  ›  Shawn Mclean

Silverlight:使用ScrollViewer自动向下滚动

  •  1
  • Shawn Mclean  · 技术社区  · 16 年前

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

    谢谢, 肖恩麦克林

    2 回复  |  直到 12 年前
        1
  •  3
  •   Sander Rijken    16 年前

    使用 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);
    
        2
  •  1
  •   AnthonyWJones    16 年前

    您确定ScrollViewer是您需要的控件吗?

    在我看来,你应该使用列表框(如果必要的话,你可以大量使用它)。它有一个 ScrollIntoView(item) 实现你目标的方法。

    推荐文章