У меня есть TreeView
элемент управления, и его шаблон настроен так:
<TreeView.Template>
<ControlTemplate>
<Border BorderBrush="DeepSkyBlue" BorderThickness="1">
<ScrollViewer CanContentScroll="False"
Height="{Binding RelativeSource={RelativeSource AncestorType=TreeView}, Path=ActualHeight}">
<ItemsPresenter />
</ScrollViewer>
</Border>
</ControlTemplate>
</TreeView.Template>
TreeView
заполняется динамически:
![TreeView filling (gif)](https://i.stack.imgur.com/4ckKI.gif)
Существует два уровня узлов TreeViewItem
:
![TreeViewItem nodes (gif)](https://i.stack.imgur.com/9TKWz.gif)
И большой палец движется, пока в подпунктах присутствуют только элементы ниже:
![Sub items](https://i.stack.imgur.com/4hVx0.png)
Большой палец движется:
![thumb is moving (gif)](https://i.stack.imgur.com/MBTXo.gif)
Но когда я пытаюсь добавить эти пункты ниже:
![Sub items](https://i.stack.imgur.com/madjJ.png)
... большой палец не прокручивается, но область ScrollBar
активна:
![thumb is not moving](https://i.stack.imgur.com/OFb6A.gif)
Шаблон элементов полностью одинаков, но они отличаются только текстовым блоком и изображением.
Я застрял на этом и не могу понять, что не так.
Какое свойство ScrollViewer
может изменяться, что приводит к такому поведению. Вот ссылка на полное определение TreeView
: определения дерева в github .