Виртуализация работает, когда TreeView - единственная вещь в окне.Например:
<Grid>
<vw:FontTreeView x:Name="fontTreeViewControl" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" BorderThickness="0" />
</Grid>
Но даже простое добавление определений строк полностью разрушает виртуализацию:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<vw:FontTreeView x:Name="fontTreeViewControl" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" BorderThickness="0" />
</Grid>
Мой стиль TreeViewItem имеет следующий триггер:
<Style.Triggers>
<Trigger Property="VirtualizingStackPanel.IsVirtualizing" Value="true">
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<VirtualizingStackPanel/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
Иконечно, TreeView имеет VirtualizingStackPanel.IsVirtualizing = "True"
Q.Как я могу иметь другие элементы в моем окне, не нарушая виртуализацию?Спасибо, помощь очень ценится.