DotNet 4.5升级后,ObservableCollection损坏

时间:2013-01-09 12:59:43

标签: wpf c#-4.0 .net-4.5

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

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

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

我可以看到包含数据的集合根本就不是更新数据网格。 我已将网格换成标准的ListBox,但没有变化。

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

编辑1: 为什么CollectionChanged事件在此ObservableCollection上为null?!?

所有数据源的结构如下。

数据绑定:

{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);
}

0 个答案:

没有答案