winform datagridview 一行绑定一个数据
时间: 2023-08-22 18:10:13 浏览: 105
您可以使用DataGridView的DataSource属性进行数据绑定,然后通过设置DataGridView的AutoGenerateColumns属性为false,手动添加DataGridViewColumn,最后将每行DataGridViewRow的DataBoundItem属性设置为相应的数据对象,实现一行绑定一个数据的效果。
具体的实现步骤如下:
1. 设置DataGridView的DataSource属性为数据源。
2. 设置DataGridView的AutoGenerateColumns属性为false,手动添加DataGridViewColumn。
3. 在DataGridView的DataBindingComplete事件中,遍历每行DataGridViewRow,并将每行DataGridViewRow的DataBoundItem属性设置为相应的数据对象。
示例代码如下:
```
// 假设数据源为List<Person>类型,Person类有Name和Age属性
List<Person> dataSource = GetDataSource();
dataGridView1.DataSource = dataSource;
dataGridView1.AutoGenerateColumns = false;
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { DataPropertyName = "Name", HeaderText = "姓名" });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { DataPropertyName = "Age", HeaderText = "年龄" });
dataGridView1.DataBindingComplete += (sender, e) =>
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
row.DataBoundItem = dataSource[row.Index];
}
};
```
注意,上述示例代码中的GetDataSource()方法需要根据实际情况替换为获取数据源的方法。
阅读全文