Okay, also weiß jeder, wie man die Scroll-Position eines ScrollViewers einstellt. Ganze Essays und Blogeinträge wurden über ScrollViewer.ScrollToVerticalOffset()
geschrieben, und es gibt ein paar hundert Fragen mit Antworten dazu hier.C#/WPF - ScrollViewer Scroll-Position abrufen?
Also, ich eingeben:
myScrollViewer.ScrollToVerticalOffset(280);
... und es ist so freundlich scrollt zu diesem Ort.
Die Frage ist, welche Eigenschaft enthält jetzt 280, so kann ich es später abrufen?
(Hinweis: myScrollViewer.VerticalOffset
und ContentVerticalOffset
beide 0; myScrollViewer.ScrollInfo
einfach nur existiert nicht.)
EDIT: Anscheinend muss ich eine detailliertere Demonstration.
private void btnTest_Click(object sender, RoutedEventArgs e) {
double scrollTarget = 280;
MessageBox.Show("Target: " + scrollTarget.ToString());
myScrollViewer.ScrollToVerticalOffset(scrollTarget);
MessageBox.Show("Now: " + myScrollViewer.VerticalOffset);
}
Ich muss wiederholen, dass diese nicht bewegen, wie beabsichtigt. Geht genau dahin, wo ich es haben will. myScrollViewer.VerticalOffset
ist jedoch auf 0 gesetzt.
Lesen MSDN, 'VerticalOffset' oder' ContentVerticalOffset' sollte Ihnen den richtigen Wert geben ... an welchem Punkt greifen Sie auf diese Eigenschaften (wenn sie auf 0 auswerten)? –