C# datagridview绑定List显示的是数据长度

DataGridView默认情况下会显示所绑定对象的属性,如绑定一个List<User>,User的Name、Age、Gender等属性会作为Column的内容显示出来.

当数据源是一个字符串集合时,string的属性只有Length,因此显示的也就只有长度。

解决方案:

1.添加一个类,将string内容作为类的成员。datagridview数据源绑定此类的集合

2.循环这个字符串集合,使用dataGridView1.Rows.Add(string)来添加数据。

3.使用匿名类型

来源:https://bbs.csdn.net/topics/390446413?page=1

DataGridView默认情况下会显示所绑定对象的属性,如绑定一个List<User>,User的Name、Age、Gender等属性会作为Column的内容显示出来。对于一个字符串来说,只有一个实例属性Length,因此显示的即为字符串的长度了。当然,如果有其他属性存在,仍然会作为Column显示出来。

要想使DataGridView显示字符串集合,可以使用匿名类型将字符串进行包装:

var test = new List<string> { "just", "a", "test" };

dataGridView1.DataSource = (from s in test select new { s }).ToList();