我是C#的新手。来自C / C ++环境。我的应用程序有List<Model>
,这是不同类别所需要的。问题是副本不会这样做,因为这句话:
dataGrid.ItemsSource = myModelList;
要求原始地址。我尝试更改一些参数并将该特定变量作为ref
传递,但只要它被赋予等号,我就会得到一个副本。正确的吗?
答案 0 :(得分:2)
你可以把它变成单身人士。 然而,整个地方需要一个具体的清单会让我认真考虑我的设计。
至少你应该考虑编写一个类来控制对列表的访问(添加,删除,清除等),并使其成为“全局”,否则你将深入到棕色的东西,直到它击中了粉丝。
答案 1 :(得分:1)
您可以为其创建一个公共类,其中包含一个公共静态列表。然后你可以随处访问。
例如
public class FakeGlobal
{
public static List<Model> MyModelList = new List<Model>();
}
甚至将其作为getter / setter的属性。
答案 2 :(得分:1)
创建一个公共类,并让您希望在类中声明为static的内容。然后只需将其作为NameOfClass.NameOfMethod()
访问public class NameOfClass
{
public static RETURNTYPE NameOfMethod()
{
// Your Code
}
}