我已经开始研究Reactive扩展,我想知道如何执行以下操作(生病并保持简单):
有一个字符串列表(或任何其他类型)
将项目添加到上述列表中时,请使用该项目。
答案 0 :(得分:8)
您无法使用现有的List<String>
类执行此操作 - 它不提供通知,并且Reactive Extensions无法对此做任何事情。
您可能希望查看ObservableCollection<T>
。
答案 1 :(得分:6)
获取ReactiveUI,然后您可以使用ReactiveCollection类 - 然后您可以使用ItemsAdded Observable。
ReactiveCollection<int> someCollection;
someCollection.ItemsAdded
.Where(x => x > 100)
.Subscribe(x => Console.WriteLine("Whoa! A big item was added!"));
答案 2 :(得分:1)
如果您有List<T>
,或者实际上有任何实现IEnumerable
的集合,则Rx不是答案。但是如果你有一个序列的项目,其中一些还不存在,那么无论如何,Rx都是一个很好的解决方案。