基本上我有两个类,例如 A 类和 B 类
A类包含一个列表,List A
B类包含一个列表,List B
每当我打开一个文件时,我使用 B 类并填充列表 B。现在要编辑此文件,我必须填充列表 A,我通常在 A 类中创建一个 B 类对象。
IE
B file = new B; //creates an object of B
A = file; // assign B to A so all contents of B will populate A
我遇到的问题是,每当我将一个项目添加到列表 A 时,它会自动更新 B 类中的列表 B。我已将列表 B 设置为:
List<typeofList> B {get; private set;}
//a default constructor
public B()
{
B = new List<typeofList>();
}
// a constructor used to set updated list
public B(List<typeofList> thisCurrentList)
{
B = thisCurrentList;
}
public addItemsToListB()
{
//codes for adding
//popoulates List B
}
我想要实现的是仅当我调用在 A 类中添加的方法时才在列表 A 中添加一个项目并在 B 类中更新列表 B。
但每当我这样做时:
A.Add(item); // this adds item to List A BUT also adds an item automatically in List B(in Class B).
知道为什么会这样吗?我调试了代码,但我不知道上面一行发生了什么。