在DataGridView中显示类的关系?

时间:2016-04-10 14:44:59

标签: c# winforms datagridview

我正在尝试在DataGridView中显示类的关系,但我无法做到。我有3个类,ProdutoUnidadeItemVenda这些类包含它们之间的关系,我无法在DataGridView中显示这些关系。在foreach中使用Console显示关系正常。

我怎么能这样做?

课程关系

public class Unidade{
   public Integer id {set;get;}
   public String descricao {set;get;};

   public Unidade(){}
}

public class Produto{
    public Long id {set;get;};
    public String descricao {set;get;};
    public Unidade unidade {set;get;}

    public Produto(){}
}

public class ItemVenda{
    public Long id {set;get;}
    public Produto produto {set;get;}

    public ItemVenda(){}
}

尝试在DataGridView中显示

private void defineGrid(){
   gridItensVenda.AutoGenerateColumns = false;
   IList<ItemVenda> lista = new ItemVendaDAO().findItensByVenda(venda);
   gridItensVenda.DataSource = lista;

   //Display Produto - works fine
   DataGridViewColumn c1 = new DataGridViewTextBoxColumn();
   c1.DataPropertyName = "produto";
   c1.HeaderText = "Produto";

   //Display Unidade of Produto doesn't work
   DataGridViewColumn c2 = new DataGridViewTextBoxColumn();
   c2.DataPropertyName = "produto.unidade";
   c2.HeaderText = "Unidade";

   //add columns to grid
   gridItensVenda.Columns.Add(c1);
   gridItensVenda.Columns.Add(c2);   

}

0 个答案:

没有答案