ReactiveUI 3.2.0.0用于具有实现ObserveCollectionChanged()方法的CollectionExtensions类。现在ReactiveUI 4.0.2下的方法在哪里?
private readonly ReactiveCollection<string> _sourceItems = new ReactiveCollection<string>();
private readonly ReactiveCollection<SelectableDataItem<string>> _selectableItemsView = null;
private readonly ReactiveCollection<SelectableDataItem<string>> _selectedItemsView = null;
private readonly ReactiveCollection<string> _selectedDataView = null;
....
this._sourceItems.ChangeTrackingEnabled = true;
this._selectableItemsView =
this.SourceItems.CreateDerivedCollection<string, SelectableDataItem<string>>(i => new SelectableDataItem<string>(i) { IsSelected = true, });
this._selectableItemsView.ChangeTrackingEnabled = true;
this._selectedItemsView =
this._selectableItemsView.CreateDerivedCollection<SelectableDataItem<string>, SelectableDataItem<string>>(
i => i,
f => f.IsSelected,
(i1, i2) => 0
);
this._selectedItemsView.ChangeTrackingEnabled = true;
this._selectedDataView =
this._selectableItemsView.CreateDerivedCollection<SelectableDataItem<string>, string>(i => i.Data, f => f.IsSelected, (i1, i2) => 0);
this._selectedDataView.ChangeTrackingEnabled = true;
答案 0 :(得分:0)
升级到ReactiveUI 4.1,并使用someCollection.CreateDerivedCollection
- 已经为您完成了所有工作:)