WPF TreeView,在TreeViewItem上添加项目。

时间:2019-05-20 10:19:34

标签: c# wpf treeview

当用户展开树状视图时,我必须动态加载数据。

我的代码如下。

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与它的

不匹配

任何技巧都会受到欢迎。

0 个答案:

没有答案