List MVVM C#:基于ViewModel中的可观察集合更新模型中的列表

List MVVM C#:基于ViewModel中的可观察集合更新模型中的列表,list,mvvm,observable,List,Mvvm,Observable,MVVM C#。模型类有一个列表。在ViewModel中,ObservableCollection是使用ViewModel中的方法从列表中构建的 在ObservableCollection中添加/删除人员时,如何更新模型中列表的更改 我不想在模型类中创建ObservableCollection class Persons { public List<Person> PersonList { get; set; } public cla

MVVM C#。模型类有一个列表。在ViewModel中,ObservableCollection是使用ViewModel中的方法从列表中构建的

在ObservableCollection中添加/删除人员时,如何更新模型中列表的更改

我不想在模型类中创建ObservableCollection

    class Persons
    {
        public List<Person> PersonList { get; set; }

        public class PersonVM : INotifyPropertyChanged
        {
            public ObservableCollection<Person> Persons { get; set; }

            public PersonVM(Persons Data)
            {
                Persons = new ObservableCollection<Person>();
                foreach (Person person in Data.PersonList)
                {
                    Persons.Add(person)    
                }
            }
        }              
    }
班级人员
{
公共列表个人列表{get;set;}
公共类PersonVM:INotifyPropertyChanged
{
公共可观察集合人员{get;set;}
公共PersonVM(人员数据)
{
人员=新的可观察集合();
foreach(数据中的个人。个人列表)
{
人。添加(人)
}
}
}              
}

从UI添加新人员时,人员将正确更新。如何高效地更新Data.PersonList,而不是将其声明为可观察的集合。

首先,请显示您的代码,以帮助社区帮助您并提供一个好的答案。也就是说,您必须将模型包装在ViewModel中,并拥有一个绑定到UI的ObservableCollection。当UI和ViewModel中发生更改时,您也可以在模型中反映更改。