winform datagridview 代码获取每个单元内容
时间: 2023-08-23 20:03:40 浏览: 43
您可以使用以下代码获取 WinForm DataGridView 控件中每个单元格的内容:
```csharp
foreach (DataGridViewRow row in dataGridView.Rows)
{
foreach (DataGridViewCell cell in row.Cells)
{
string content = cell.Value.ToString();
// 处理单元格内容
}
}
```
在上述代码中,`dataGridView` 是您的 WinForm DataGridView 控件的实例。对于每一行和每一个单元格,我们通过 `row.Cells` 集合和 `cell.Value` 属性获取单元格内容,并将其存储在 `content` 变量中进行处理。
相关问题
winform自定义datagridview 获取值
如果您想从自定义的DataGridView中获取值,可以使用以下代码:
```csharp
// 假设您的DataGridView名称为myDataGridView
foreach (DataGridViewRow row in myDataGridView.Rows)
{
// 取得每行的值
object value1 = row.Cells["ColumnName1"].Value;
object value2 = row.Cells["ColumnName2"].Value;
// 在此处处理取得的值
}
```
在这个例子中,您需要将"ColumnName1"和"ColumnName2"替换为您的DataGridView中的实际列名称。另外,请注意,如果使用了绑定数据源,您可能需要使用DataGridView的绑定数据源来获取值。
winform datagridview 一行绑定一个数据
您可以使用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()方法需要根据实际情况替换为获取数据源的方法。