[英]c# list of objects to datagridview
I Have the next object:我有下一个 object:
public partial class PEDIDOS公共部分 class PEDIDOS
{ {
public PEDIDOS()
{
this.ARTICULOS = new HashSet<ARTICULOS>();
}
public int id { get; set; }
public string descripcion { get; set; }
public PROVEEDORES PROVEEDORES { get; set; }
} }
And the class PROVEEDORES: class PROVEEDORES:
public partial class PROVEEDORES
{
public PROVEEDORES()
{
this.PEDIDOS = new HashSet<PEDIDOS>();
}
public int id { get; set; }
public string nombre { get; set; }
public string codProveedor { get; set; }
}
And I Have a LIST of PEDIDOS.我有一份 PEDIDOS 清单。
I want to show this this list in a datagridview (windows forms):我想在 datagridview(windows 窗体)中显示这个列表:
dataGridView1.DataSource = lista;
Then I get this:然后我得到这个:
|id | descrpcion | PROVEEDORES |
--------------------------------------------------|
|1 | EXAMPLE | system.data.dinamicproxyes.....|
|2 | example | system.data.dinamicproxyes.....|
...
But I need that proveedores column, was the "nombre" field of PROVEEDORES's class:但我需要proveedores 列,是PROVEEDORES 的class 的“名词”字段:
|id | descrpcion | PROVEEDORES |
--------------------------------------------------|
|1 | EXAMPLE | proveedor's name |
|2 | example | proveedor's name |
...
You can create a lista this way:您可以通过以下方式创建列表:
var lista= context.PEDIDOS.Select( i=> new {
id=i.id,
description=i.description,
PROVEEDORES=i.ROVEEDORES.nombre
}).ToList();
....
dataGridView1.DataSource = lista;
One way to achieve what you describe is to override the PROVEEDORES
ToString
method.实现您所描述的一种方法是覆盖
PROVEEDORES
ToString
方法。 Something like…就像是…
public override string ToString() {
return nombre;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.