填充一个数据视图

本文关键字:一个 数据 视图 填充 | 更新日期: 2023-09-27 18:04:31

我有一个"Person"对象列表:

public class Person
{
   public Int32 Id { get; set; }
   public String Name { get; set; }
   public Document oDocument  { get; set; }
}

还有Document类

public class Document
{
   public String Type { get; set; }
   public String Code { get; set; }
}

我需要填充一个DataGridView与列表显示一些只是两列:名称(人)和DocumentCode(文档)

我用了这个代码,但是我没有得到我想要的。

  dgvPersona.DataSource = list;

填充一个数据视图

您需要选择一个匿名类型的对象(项目所需字段),然后将其绑定到您的gridview,如:

var list = (from p in persons
            select new 
                   {
                   Name = p.Name,
                   DocumentCode = p.Document.Code
                   }).ToList();
dgvPersona.DataSource = list;

您也可以选择Id并将其保存在gridview的隐藏列中,以便稍后您可以使用它进行记录更新等。

try this:

  public class Person
        {
            public Int32 Id { get; set; }
            public String Name { get; set; }
            public Document oDocument { get; set; }
        }
        public class Document
        {
            public String Type { get; set; }
            public String Code { get; set; }
        }
     List<Person> list = new List<Person>();
     dgvPersona.DataSource= list.Select(data => new { data.Name, data.oDocument.Code }).ToList();