我正在制作一个具有 UserControls 列表框的 WP7 应用程序。每个 UserControl 都有一个 ItemsControl 和 Button(用于获得更多结果)。单击按钮时,ItemsControl 项目将增加 5 或 10。
现在单击除第一个或最后一个之外的任何用户控件的 GetMore 按钮时,ListBox 的可滚动高度(列表框的总高度)将增加,但 ListBox 的 VerticalOffset(滚动条从顶部的位置)仍然存在相同的。现在我面临的问题是垂直偏移不是绝对的,而是相对于可滚动高度。因此,直到那时正在查看的内容将根据 ScollableHeight 的新值进行更改。
我想知道它们之间的关系,以便我可以做一些数学运算并设置 VerticalOffset 值。
我在 VerticalOffset 和 ScrollableHeight 上添加了一些依赖属性,当其中任何一个发生更改时,我可以通过它们获取事件。尝试使用 ScrollIntoView 重新调整垂直偏移
任何建议或更正都非常感谢。