我有一个包含动态内容的滚动查看器。在某个事件中,新内容可见,并显示滚动条。如何使其自动滚动以查看该内容?
谢谢, 肖恩麦克莱恩
答案 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)
方法可以实现您的目标。