• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

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

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://www.cnblogs.com/linghaoxinpian/p/5906374.html 
 

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绑定。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
c#winform打包部署自定义界面或设置开机启动发布时间:2022-07-13
下一篇:
vs中修改.netc#工程名发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap