Мне нужно динамически загружать данные, когда пользователь расширяет древовидное представление.
Мой код выглядит следующим образом.
XAML:
<TreeView
ItemsSource="{Binding MasterList}"
x:Name="treeViewOrg"
TreeViewItem.Expanded="TreeViewItem_Expanded"
VirtualizingStackPanel.IsVirtualizing="True"
VirtualizingStackPanel.VirtualizationMode="Recycling">
CS:
private void TreeViewItem_Expanded(object sender, RoutedEventArgs e)
{
TreeViewItem tvi = e.OriginalSource as TreeViewItem;
if (tvi != null)
{
try
{
HybridOrganAndBuddy org = tvi.DataContext as HybridOrganAndBuddy;
if (org.part_code != null)
{
loadFriendData(org.part_code, org);
}
}
catch(Exception ee)
{
Console.WriteLine(ee);
}
}
}
Метод loadFriendData загружает данные с сервера через HTTP-пост и добавляет их в список, который связан как «MasterList».
Но приложение вылетает сразу после того, как я попробую это.
Трассировка ошибки выглядит следующим образом: (я перевел ее с моего местного языка)
System.InvalidOperationException: ItemsControl не соответствует его
Любые советы будут приветствоваться.