码迷,mamicode.com
首页 > Windows程序 > 详细

C# datagridview列绑定类中类的属性

时间:2016-09-25 18:39:33      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

datagridview编辑列时,对于类中类的属性绑定,尝试了一下”类名.属性名“ 并没有正确绑定,后又尝试了几次无果,只能利用Linq来解决了,

首先,datagridview要绑定的是学生类(Student),而学生类里有老师类(Teacher)

 1 public class Student
 2 {
 3      public int Id;
 4       public Teacher teacher;    
 5 }    
 6 
 7 public class Teacher
 8 {
 9      public string Name;
10 }

 

  正常是这样:datagridview.Datasource=List<Student>;  但是无法将列绑定 teacher.Name  

 1 //
 2 List<Student> list=从某处得来的数据,比如数据库
 3 
 4 // datagridview.DataSource=list  ;    此句改为如下
 5 
 6 var list2=list.Select(s=>new {s.Id,    teacher_name=s.teacher.Name});    //转为匿名
 7 
 8    datagridview.DataSource=list2.ToList();
 9    
10   

 

 //最后再将 需要绑定的那一列的绑定 名称写为:teacher_name 。即可

  技术分享

 

为什要最后  ToList()?,因为,list2是 IEnumerable,是不能直接被datagridview绑定。

 

C# datagridview列绑定类中类的属性

标签:

原文地址:http://www.cnblogs.com/linghaoxinpian/p/5906374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!