Есть ли способ выбрать вручную node в виртуализации TreeView и затем привести его в поле зрения?
Модель данных, которую я использую с моим TreeView, реализована на основе модели VM-M-V. Каждое свойство TreeViewItem IsSelected привязывается к соответствующему свойству в ViewModel. Я также создал прослушиватель для события TreeView ItemSelected, где я вызываю BringIntoView() для выбранного TreeViewItem.
Проблема с этим подходом заключается в том, что событие ItemSelected не будет создано до создания фактического TreeViewItem. Таким образом, при включенной виртуализации выбор node ничего не сделает, пока TreeView не будет прокручиваться достаточно, а затем он "волшебным образом" перейдет к выбранному node, когда событие будет наконец поднято.
Мне бы очень хотелось использовать виртуализацию, потому что у меня есть тысячи узлов в моем дереве, и я уже видел впечатляющие улучшения производительности при активации виртуализации.