C# winform DataGridView如何实现嵌套对象绑定到列比如一般都是:DataGridView对象.DataPropertyName="字段名或对象属性名";
而我想要实现的是:
DataGridView对象.DataPropertyName="子对象.属性名";其中子对象是绑定DataGridView数据源的属性对象我这样绑定上去,目前是没有显示值,请问哪位高人指点一下,还是DataGridView不支持子对象属性绑定!非常感谢!!!

解决方案 »

  1.   

    我将子对象绑定到列,显示出来的是对象完整名称,我想应该是支持子对象绑定的呀!在ASP.NET中DATAGIRD都可以实现的
      

  2.   

    如果只绑定子对象的一个属性,可以把这个属性通过 ToString() 方法返回字符串,直接绑定子对象就好了。
    否则,就只好在 GridView 的 gvResult_PageIndexChanging 事件中处理了。
      

  3.   

    DataGridView只能绑定一层。
    可以用linq转换下,把嵌套的属性提升到顶层,比如:
    var list4binding = list.Select(x => new { x.普通属性1, x.普通属性2, 子对象_属性=x.子对象.属性 ... });
    然后可以绑定:
    dataGridView.DataSource = list4binding;
    dataGridView.DataPropertyName="子对象_属性";