0

Dotnet 4.5 已推广到我们的组织。升级后我的一个 WPF 工具坏了(一个网格不显示任何东西)。

该应用程序有一些绑定到不同来源的数据网格。除了数据类型之外,每个源都是相同的。

所有其他来源都在 100% 工作。

我可以看到包含数据的集合根本没有更新数据网格。我已将网格换成标准 ListBox 并且没有任何变化。

似乎用整个集合替换值是行不通的。如果我迭代并将项目添加到现有列表中,那么它可以工作。

编辑 1: 为什么此 ObservableCollection 上的 CollectionChanged 事件为空?!?

所有数据源的结构如下。

数据绑定:

{Binding Sprints, Source={x:Static ViewModels:CoreViewModel.Instance}}

属性(数据源):

private ObservableCollection<SprintEntity> _sprintsField;
public static ObservableCollection<SprintEntity> Sprints
{
  get
  {
    return Instance._sprintsField;
  }
  set
  {
    if (Instance._sprintsField != value)
    {
      Instance._sprintsField = value;
      Instance.RaisePropertyChanged("Sprints");
    }
  }
}

获取数据的代码(正确获取数据):

public static void GetSprints(int workspaceID, Action<bool, string> callback)
{
  var proxy = new NotificationServiceClient();
  proxy.GetSprintsCompleted += (sender, e) =>
  {
    if (e.Error == null)
    {
      Sprints = e.Result;
      callback(true, null);
    }
    else
    {
      callback(false, e.Error.Message);
      throw e.Error;
    }
  };
  proxy.GetSprintsAsync(workspaceID);
}
4

0 回答 0