【发布时间】:2013-04-17 04:19:06
【问题描述】:
我想要一个列表框,我将用它来填充项目。当用户滚动到listBox 的底部时,listBox 应该会加载更多项目。
在 WP7 中有大量的教程可以做到这一点,但我还没有找到在 Silverlight 网络应用程序中做到这一点的可靠方法。
在尝试不同的事情时,我设法创建了一个方法,当用户滚动到 ListBox 底部时可以显示一条消息。这更像是一个概念证明,而不是最终实现:
ScrollViewer scrollViewer = new ScrollViewer();
var childScrollViewer = VisualTreeHelper.GetChild(this, 0);
if (childScrollViewer is ScrollViewer)
scrollViewer = (ScrollViewer)childScrollViewer;
if (scrollViewer.VerticalOffset >= scrollViewer.ScrollableHeight)
MessageBox.Show("You're at the bottom!");
我目前正在从 ListBox 的 MouseWheel 事件中调用此方法。这种方法并不理想,因为它不考虑用户单击滚动条并将其向下拖动。这个实现也很糟糕,因为当用户滚动到列表框的顶部或底部时会显示消息。
这里有一些不错的 WP7 教程,我发现我希望可以在 Silverlight 网络应用中实现:
- Here's a WP7 tutorial I can't use
- This one seemed promising but is poorly described and doesn't really work
- Here's another WP7 tutorial I can't use
我只需要指出正确的方向。无论是教程,还是我可以了解的概念,都可以解决问题,或者任何其他可以帮助我在 Silverlight 网络应用程序中实现这一点的东西。
【问题讨论】:
标签: c# .net silverlight web-applications listbox