我的目标是从类实例中检索List,然后修改该列表中的对象,但是我不知道对象将如何受到影响并需要一些有价值的知识。
我们说我们有两个案例:
创建一个新的List,从类实例中获取列表:
ItemsList
创建一个新的包装列表,列表中的每个项目都包含具有一些其他属性的原始对象:
wrapperList
我的问题是,如果我要修改classInstance
和ObservableCollections
中的对象,这些更改是否会反映在DataGrids
中?
我将在多个Lists
中使用多个android:enabled="false"
,我在此示例中使用了edittext.setText("Your Data");
来简化情况,但我确定结果会相同。< / p>
修改
我意识到标题并没有很好地描述我的问题,我鼓励任何人帮助我改进它。
答案 0 :(得分:1)
我的问题是,如果我要修改
ItemsList
和wrapperList
中的对象,这些更改是否会反映在classInstance
中?
是的,除非您创建副本SomeType
并将副本添加到新集合中。
以下内容为每个Wrapper
对象创建一个新的SomeType
个对象...
List<Wrapper> wrapperList = itemsList.Select(x => new Wrapper {Item = x } );
...但是每个Wrapper
对象仍然有一个引用(尽管Item
属性)到SomeType
中的classInstance.ItemsList
对象。< / p>
答案 1 :(得分:0)
要同步集合,您应该使用ObservableCollection作为原始列表,并为源集合更改时自动更新的Wrappers实现集合(可能还有ObservableCollection派生)。