ScrollViewer events for Windows Phone 8
本文关键字:Phone Windows for events ScrollViewer | 更新日期: 2023-09-27 18:11:11
我有一个列表框。列表框的项目可以是图像,文本,音频,视频等。项目是通过互联网获取的,有时列表会变得太长。我想在我的列表框中实现一个"到顶"功能,这些功能在许多网站中使用。当用户开始滚动时,出现一个按钮,将他们带到顶部,如果他们滚动到顶部,按钮就消失了。
问题是我不知道该做什么。如果我禁用列表框的滚动查看器并将列表框放入滚动查看器中,那么我不知道应该使用哪个滚动查看器的事件和属性?您可以使用RadDataboundListBox上的ScrollStateChanged事件来查看列表框是否正在滚动。如果是,则可以显示ScrollToTop按钮。
像这样:
private void RadDataBoundListBox_ScrollStateChanged(object sender, ScrollStateChangedEventArgs e)
{
if (e.NewState == ScrollState.Scrolling)
{
// Code to show the ScrollToTop button
}
}
您可以使用不同的ScrollStates在不同的时间显示和隐藏ScrollToTop按钮。(即当NewState == ScrollState。TopStretch,你可以隐藏按钮)
如果你要绑定到ListBox的ItemsSource,你可以使用上面提到的BringIntoView方法。
RadDataBoundListBox.BringIntoView(BoundObservableCollection[0]);
我希望这对你有帮助。谢谢,约书亚
我真的不确定您为什么要使用RadDataBoundListBox
(也许您需要虚拟化),但是这里有一些有用的成员。完整列表可在此处找到。
TopVisibleItem
:此属性获取当前实现的top vieport项。此项可用于查找用户滚动到的索引。如果索引是25,你可能想要显示滚动到顶部按钮。BringIntoView
:此方法可用于点击事件的"滚动到顶部"按钮。只需将索引为0的项作为参数传递。
希望这能解决问题