好的,所以,每个人都知道如何设置ScrollViewer的滚动位置.已经写了整篇论文和博客文章ScrollViewer.ScrollToVerticalOffset(),这里有几百个问题的答案.
所以,我输入:
myScrollViewer.ScrollToVerticalOffset(280);
Run Code Online (Sandbox Code Playgroud)
......它如此亲切地滚动到那个位置.
问题是,什么属性现在包含280,所以我可以在以后检索它?
(提示:myScrollViewer.VerticalOffset并且ContentVerticalOffset都是0; myScrollViewer.ScrollInfo只是普通不存在.)
编辑:显然我需要更详细的演示.
private void btnTest_Click(object sender, RoutedEventArgs e) {
double scrollTarget = 280;
MessageBox.Show("Target: " + scrollTarget.ToString());
myScrollViewer.ScrollToVerticalOffset(scrollTarget);
MessageBox.Show("Now: " + myScrollViewer.VerticalOffset);
}
Run Code Online (Sandbox Code Playgroud)
我必须重申,这确实按预期滚动.向我正确的方向前进.但是,myScrollViewer.VerticalOffset设置为0.
Dig*_*Man 25
解决的办法是手动调用myScrollViewer.UpdateLayout()之后myScrollViewer.ScrollToVerticalOffset().然后,myScrollViewer.VerticalOffset将具有预期值.
| 归档时间: |
|
| 查看次数: |
29118 次 |
| 最近记录: |