wpf DataGrid 设置项目源列表<object>

wpf DataGrid set itemsource List<object>

我对 wpf 中的 DataGrid 有疑问

这是一个 class :

class Superviser
    {
        public long Id = 0;
        public string name = "";
        public string father = "";
        public string code = "";
    }

这是一个构建此 class 对象列表的函数

public List<Superviser> allSuperviser()
        {
            return db.tbPersons.Where(i => i.level == StaticsObject.isSuperviser).Select(x => new Superviser
            {
                Id = x.Id,
                name = x.firstName,
                father = x.father,
                code = x.code,
            }).ToList();
        }

我使用此代码在数据网格中设置此列表

dgvPerson.ItemsSource = classPerson.allSuperviser();

但是当 运行 程序数据网格为空时!

提示:列表不为空。

问题出在哪里?

如何在 DataGrid 上显示此列表?

你好我解决了

我把class改成:

class Superviser
{
    public long Id { get; set; }
    public string name { get; set; }
    public string father { get; set; }
    public string code { get; set; }
    public Superviser() { }

    public Superviser(long Id, string name, string father, string code)
    {
        this.Id = Id;
        this.name = name;
        this.father = father;
        this.code = code;
    }
}

并将函数更改为:

public List<Superviser> allSuperviser()
        {
            return db.tbPersons.Where(i => i.level == StaticsObject.isSuperviser).Select(x => new Superviser { Id = x.Id, name = x.firstName + " " + x.lastName, father = x.father, code = x.code }).ToList();
        }

问题已解决 :)