将项添加到ObservableColletion - UWP C#

问题描述 投票:0回答:1

当我尝试将项目添加到可观察集合时,它总是用最后添加的项目替换所有项目。它是什么原因?我的代码在这里

  public class FavoriteClassList
{
    public int ID { get; set; }
    public string Name { get; set; }
}
public static ObservableCollection<FavoriteClassList> _FavoriteClassList = new ObservableCollection<FavoriteClassList>();
FavoriteClassList objFavoriteClassList = new FavoriteClassList();

for (int m=1;m<=10;m++)
            {
              objFavoriteClassList.ID = m;
              objFavoriteClassList.Name  = "Name"+m;
             _FavoriteClassList.Add(objFavoriteClassList);
            }

现在,当打印AppGlobals._FavoriteClassList的值时,它显示10个项目。但每个项目的ID和名称分别为10和Name10。

c# class uwp observablecollection
1个回答
1
投票

您添加了一个对象10次并重写10次。这是一个固定版本:

public class FavoriteClassList
{
   public int ID { get; set; }
   public string Name { get; set; }
}
public static ObservableCollection<FavoriteClassList> _FavoriteClassList = new ObservableCollection<FavoriteClassList>();


for (int m=1;m<=10;m++)
{
   FavoriteClassList objFavoriteClassList = new FavoriteClassList();
   objFavoriteClassList.ID = m;
   objFavoriteClassList.Name  = "Name"+m;
   _FavoriteClassList.Add(objFavoriteClassList);
}
© www.soinside.com 2019 - 2024. All rights reserved.