Я создаю приложение UWP, в котором используется портированная версия ExpanderView WPF (ExpanderRT в Codeplex) , я использую ListBox для отображения нескольких ExpanderView в зависимости от моих данных из моей ViewModel. Я столкнулся с проблемой производительности при расширении ExpanderView со многими элементами. Как вы можете видеть в GIF, первый родитель расширяется очень медленно, и требуется некоторое время, чтобы отобразить все дочерние элементы. Если у родителя не так много дочерних элементов, анимация будет довольно гладкой.
Кто-нибудь имеет опыт работы с этим элементом управления и может помочь мне ускорить расширение?
Это мой код XAML:
<Grid>
<ListBox Name="listbox">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate x:DataType="models:Parent">
<controls:ExpanderControl
ItemsSource="{x:Bind Childs}"
HeaderTemplate="{StaticResource CustomHeaderTemplate}"
ExpanderTemplate="{StaticResource CustomExpanderTemplate}"
ItemTemplate="{StaticResource CustomItemTemplate}"
NonExpandableHeaderTemplate="{StaticResource CustomNonExpandableHeaderTemplate}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
Этот код взят из модели
public class Category
{
public string Name{ get; set; }
public List<Subcategory> Childs{ get; set; }
}