我有一个例程,可以解析xml提要中的数据。
...
matches.Add(_item);
}
在此之后不久,我只想包含与我的where子句匹配的项目
if (this.MatchType == FixtureType.Played)
{
matches = matches.ToList().Where(
m =>
m.matchResult == "D"
).ToObservableCollection();
}
之后,如果我设置了一个断点,我会发现匹配项现在包含了我要查找的项。
现在的问题是,数据绑定到可观察集合的控件仍然具有初步数据。
最佳答案
问题是在这种情况下有2个ObservableCollection
实例
控件绑定到的原始对象
您通过ToObservableCollection
调用创建的新文件
为了使新结果显示在控件中,您需要将其重新绑定到新的ObservableCollection
实例。那还是修改原始实例的内联。
var results = matches.Where(m => m.matchResult == "D").ToList();
matches.Clear();
foreach (var cur in results) {
matches.Add(cur);
}
关于c# - 过滤此可观察的集合时,我是否缺少某些内容?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7598792/