Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当DeriveCollectionList分组时,如何修改被动X(Rx)的组成员_C#_System.reactive_Reactive Programming_Reactiveui - Fatal编程技术网

C# 当DeriveCollectionList分组时,如何修改被动X(Rx)的组成员

C# 当DeriveCollectionList分组时,如何修改被动X(Rx)的组成员,c#,system.reactive,reactive-programming,reactiveui,C#,System.reactive,Reactive Programming,Reactiveui,我收集了大量物品,这些物品不断更新。当项目更新时,我希望组也更新 我需要对这个集合进行分组,为每个组创建一个GroupItem类,并将项目存储在GroupItem中。当原始集合中的项发生更改时,我可以看到创建了一个新组,并将修改后的项添加到该组(groupedItem)。到现在为止,一直都还不错。但我还需要将此修改的项目从其原始组中删除。我如何做到这一点 public MyObjectVM(ObservableCollection<Item> source) { Object

我收集了大量物品,这些物品不断更新。当项目更新时,我希望组也更新

我需要对这个集合进行分组,为每个组创建一个GroupItem类,并将项目存储在GroupItem中。当原始集合中的项发生更改时,我可以看到创建了一个新组,并将修改后的项添加到该组(groupedItem)。到现在为止,一直都还不错。但我还需要将此修改的项目从其原始组中删除。我如何做到这一点

public MyObjectVM(ObservableCollection<Item> source)
{
    ObjectsSource = source.CreateDerivedCollection((x => x), _ => true, null, null);
    ObjectsSource.ChangeTrackingEnabled = true;

    var whenObjectsAddedChanged = Observable
        .Merge(ObjectsSource.ItemsAdded, 
               ObjectsSource.ItemChanged.Select(x => x.Sender));    

    whenObjectsAddedChanged
        .GroupBy(o => o.A)
        .Subscribe( group => 
        {
             var newgroup = new GroupedItem();
             GroupedObjects.Add(newgroup);
             newgroup.Entries = new ObservableCollection<Item>();
             group.Subscribe(i => newgroup.Entries.Add(i));
        });
}
公共MyObjectVM(ObservableCollection源)
{
ObjectsSource=source.CreateDerivedCollection((x=>x),=>true,null,null);
ObjectsSource.ChangeTrackingEnabled=true;
var whenObjectsAddedChanged=可观测
.Merge(ObjectsSource.ItemsAdded,
ObjectsSource.ItemChanged.Select(x=>x.Sender));
什么时候发生了变化
.GroupBy(o=>o.A)
.订阅(组=>
{
var newgroup=newgroupeditem();
GroupedObjects.Add(newgroup);
newgroup.Entries=新的ObservableCollection();
Subscribe(i=>newgroup.Entries.Add(i));
});
}

目前,此代码不完整,无法编译。您能否在问题中提供可编译代码,说明您需要在何处进行更改?