在计时器上的ListBox中的DataTemplates之间滚动

时间:2009-04-20 19:24:29

标签: c# wpf listbox

我正在开发一个项目,我需要在整个应用程序中自动为ListBox中显示的DataTemplates进行动画滚动。基本上在Javascript中常见的东西,如this Javascript smooth scrolling example,在计时器上运行。

我见过其他几个人发布类似的问题like this one,但我还没有看到任何人优雅地实现它。我已经尝试在ScrollViewer中覆盖LineDownCommand,但这并不是我想要完成的事情(也不是CanContentScroll =“False”)。我已经暂时使用BringIntoView,直到实现它,但这并不能完全满足我的需要。

有没有其他人有幸实现这一点或有任何指示正确的方向?我在这里的时间很短。

谢谢!

1 个答案:

答案 0 :(得分:0)

您真正需要做的是实现自己的ScrollViewer,它源自ContentControl。通过这样做,您可以完全控制所有滚动并实现您自己的特殊命令,以启动自动平滑滚动。如果你在实现它时遇到麻烦,你总是可以使用WPF模板和Reflector来看看微软是如何做到的。