Я использую виртуальное древовидное представление в WPF для отображения 3-уровневой глубокой иерархии с большим количеством дочерних узлов (5000+).
<TreeView Grid.Row="0" Grid.Column="0" Name="TestTree" ItemsSource="{Binding}" VirtualizingStackPanel.IsVirtualizing="True">
...
</TreeView>
Что происходит, если я расширяю дочерние узлына 3-м уровне и прокрутите до самого конца, контент не будет отображаться правильно, и скроллер «переворачивается», и я могу продолжать прокручивать вниз вечно, поведение повторяется после некоторой дополнительной прокрутки.
Это только происходитв виртуализированном режиме, но, к сожалению, из-за большого количества дочерних узлов время загрузки дерева в не виртуализированном режиме является непомерно большим.
Я прочитал следующие ссылки на SO здесь иоригинальный поток на форумах MSDN здесь , но предложенный обходной путь вызова UpdateLayout()
в обработчике SelectedItemChanged у меня не работал.и если да, то есть ли обходной путь?
Цените любой вклад - спасибо!