Silverlight: автоматическая прокрутка вниз с помощью Scrollviewer - PullRequest
1 голос
/ 23 декабря 2009

У меня есть прокрутка с динамическим контентом. На событии новый контент становится видимым, и появляется полоса прокрутки. Как мне сделать автоматическую прокрутку для просмотра этого контента?

Спасибо, Шон Маклин

Ответы [ 2 ]

3 голосов
/ 24 декабря 2009

Используйте 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 голос
/ 24 декабря 2009

Вы уверены, что Scrollviewer - это тот элемент управления, который вам нужен здесь?

Звучит так, будто вы должны использовать ListBox (который вы можете сильно стилизовать при необходимости) У него есть метод ScrollIntoView(item), который достиг бы вашей цели.

...