2

我已经开始研究反应式扩展,我想知道如何做以下事情(我尽量保持简单):

  1. 有一个字符串列表(或任何其他类型)

  2. 当一个项目被添加到上述列表中时,对它做一些事情。

4

3 回答 3

9

你不能用现有的List<String>类来做到这一点——它不提供通知,而且 Reactive Extensions 对此也无能为力。

你可能想看看ObservableCollection<T>

于 2011-07-09T17:42:12.937 回答
6

获取ReactiveUI,然后您可以使用 ReactiveCollection 类 - 然后您可以使用 ItemsAdded Observable。

ReactiveCollection<int> someCollection;

someCollection.ItemsAdded
    .Where(x => x > 100)
    .Subscribe(x => Console.WriteLine("Whoa! A big item was added!"));
于 2011-07-09T23:33:13.957 回答
1

如果你有一个List<T>,或者真的有任何实现的集合,IEnumerable那么 Rx 不是答案。但是,如果您有一系列项目,其中一些还不存在,那么无论如何,Rx 是一个很好的解决方案。

于 2011-07-09T23:06:49.563 回答