WPF:在插入项目时阻止TreeView滚动到顶部

时间:2013-12-30 13:22:43

标签: c# wpf treeview

即使插入了项目,我也会尝试保持TreeView控件的滚动位置 ItemsSource中的TreeView由代码设置,并使用DataTemplate显示项目。

当我在0处向数据源插入项目时,TreeView将自动向上滚动新项目的高度。
实际上,当滚动位置位于顶部时,此功能非常有用,但即使不是,它也会向上滚动 (我正在使用TreeView虚拟化CanContentScroll设置为false的项目。)

如何防止此默认行为?


WPF 4.0 / C# - Windows 7上的Visual Studio 2010

2 个答案:

答案 0 :(得分:1)

我前一段时间遇到过这个问题,并且找不到实际问题的“解决方案”,但我找到了解决方法。

找到添加项目的事件,并在触发该项目时,将所选项目索引设置为项目数量-1(选择最后一项)。

答案 1 :(得分:0)

最后,我通过处理ScrollChanged的{​​{1}}事件解决了这个问题 然后写下这样的代码:

ScrollViewer

谢谢大家。