在C#怎么将数据库里的字段绑定到datagridview的固定列名
1个回答
展开全部
Winfrom中的DataGridView其实就是一个数组的视图。
你的这个要求有两种常见的方式去解决,
DataGridView.Name = dg; 数据库查询的结果为DataTable dt;
1,直接视图绑定:
把DataGridView的AutoGenerationColumn 设置为true(自动增加列),然后绑定
dg.DataSource = dt;
绑定之后 DataGridView就会根据dt的列来自动显示了。
但是如果想更改列头的名称,就需要在查询的时候做好, 比如
select id as '序号',name as '姓名' from xxxx.....
绑定后,列头就是序号、姓名、
2.列绑定,
很麻烦,一般用于特殊的组合表查询。
比如数据库查询出的dt只有一列, 列头是Name。 想绑定到DataGridView指定的列(如第2列), 那么需要指定DataGridView的第二列,指定数据类型(string?、int?)然后遍历dt,把dt的每一行都加入到这一列的Items里面去。
如
var col = dg.Columns[1] ; //第二列
col.Type = Typeof["string"];
foreach(var cell in dt.Rows) //遍历dt
{
col.Items.Add((string)cell[0]);//把数据库的字段一个个的加入到指定列里面,
}
你的这个要求有两种常见的方式去解决,
DataGridView.Name = dg; 数据库查询的结果为DataTable dt;
1,直接视图绑定:
把DataGridView的AutoGenerationColumn 设置为true(自动增加列),然后绑定
dg.DataSource = dt;
绑定之后 DataGridView就会根据dt的列来自动显示了。
但是如果想更改列头的名称,就需要在查询的时候做好, 比如
select id as '序号',name as '姓名' from xxxx.....
绑定后,列头就是序号、姓名、
2.列绑定,
很麻烦,一般用于特殊的组合表查询。
比如数据库查询出的dt只有一列, 列头是Name。 想绑定到DataGridView指定的列(如第2列), 那么需要指定DataGridView的第二列,指定数据类型(string?、int?)然后遍历dt,把dt的每一行都加入到这一列的Items里面去。
如
var col = dg.Columns[1] ; //第二列
col.Type = Typeof["string"];
foreach(var cell in dt.Rows) //遍历dt
{
col.Items.Add((string)cell[0]);//把数据库的字段一个个的加入到指定列里面,
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询