首页 > 解决方案 > 在 WPF 中使用 ViewModel 时,SelectedItem 始终为空

问题描述

我目前尝试复制文章“使用 ViewModel 模式简化 WPF TreeView”的想法,并构建一个 TreeView,它具有我这一代的 ItemSource(如文章中所述),具有完全相同的模板和样式. 我的数据在 TreeView 中正确显示,但问题是,如果我触发事件“SelectedItemChanged”,我总是会得到值为 null 的选定项。

我的事件代码如下:

private void container_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
{
  TreeViewItem item = container.SelectedItem as TreeViewItem;
  if(item == null)
    return;

  // some more code ...
}

在我使用 foreach 循环添加所有项目之前,例如:

container.Items.Add(item);

在那里我已经遇到了同样的问题,所以我真的不知道,为什么我无法访问我的树视图的选定项目。你有什么建议吗?

标签: c#wpftreeview

解决方案


推荐阅读