C# WinForm DataGridView让DataPropertyName支持复杂属性

  • 时间:2017-11-09
  • 分类:ASP.NET
  • 1087 人浏览
[导读]首先给Grid添加BindingSource,类型为BindingForForm2。或者设置Grid的DataSource为IEnumerable

首先给Grid添加BindingSource,类型为BindingForForm2。或者设置Grid的DataSource为IEnumerable<BindingForForm2>。

BindingForForm2类型如下。

View Code

 

 我们想在Grid上直接显示BindingForForm2中ClassTest属性的S1和S2属性。可以如下图设置DataPropertyName。直接设置用属性点的方式。

然后如下注册DataGridView的CellFormatting事件即可。代码大致意思是,先取到当前选中行的Object(此处为BindingForForm2),然后取到DataPropertyName的设置,再循环用反射读取想要的值。

 

 

效果:

bindingSource填充数据

View Code

GridView显示

 

来源:本文为线上采编,如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除!