C# 如何在WindowsForms中使用DataGridView获取选定行中的所有单元格数据?
我有一个DataGridView,它显示了数据库中的一些数据,当我双击DataGridView中的任何一行时,我会在一个新窗口中看到它的内容 我有这个:C# 如何在WindowsForms中使用DataGridView获取选定行中的所有单元格数据?,c#,winforms,windows-forms-designer,C#,Winforms,Windows Forms Designer,我有一个DataGridView,它显示了数据库中的一些数据,当我双击DataGridView中的任何一行时,我会在一个新窗口中看到它的内容 我有这个: private void ListaProductos_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { var content = ListaProductos.Rows[e.RowIndex].Cells["Name"].Value.ToSt
private void ListaProductos_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
var content = ListaProductos.Rows[e.RowIndex].Cells["Name"].Value.ToString();
var abrirNuevoProducto = new modificar_producto(content ); // I want to pass data to another form
abrirNuevoProducto.Show(); // loads the new form with data for modification
}
这对我有用,但是。。。这样一个接一个地做会很累也很乏味:
var content = ListaProductos.Rows[e.RowIndex].Cells["Name"].Value.ToString();
var content2 = ListaProductos.Rows[e.RowIndex].Cells["Age"].Value.ToString();
var conten3 = ListaProductos.Rows[e.RowIndex].Cells["Surname"].Value.ToString();
var content4 = ListaProductos.Rows[e.RowIndex].Cells["Address"].Value.ToString();
... and 150 more columns
var abrirNuevoProducto = new modificar_producto(content, content2, content3, content4 ... and so on); // I want to pass data to another form
abrirNuevoProducto.Show(); // loads the new form with data for modification
我会用一个列表来做这件事,但是…,我想知道是否有一个简单的方法来做这件事,因为我正在尝试的方法是非常疲惫和糟糕的。或者我应该使用列表来代替
我需要将数据传递到另一个表单以进行修改操作。如果您已经为此表定义了一个类,则可以使用如下代码
var products = new List<Products>(grid.SelectedRows.Count);
for(int index = 0; index < grid.SelectedRows.Count; index++)
{
var selectedRow = grid.SelectedRows[index];
var product = (Products)selectedRow.DataBoundItem;
products.Add(prduct);
}
var产品=新列表(grid.SelectedRows.Count);
for(int index=0;index
或者,如果没有类定义,可以使用dynamic关键字
var products = new List<dynamic>(grid.SelectedRows.Count);
for(int index = 0; index < grid.SelectedRows.Count; index++)
{
var selectedRow = grid.SelectedRows[index];
var product = (dynamic)selectedRow.DataBoundItem;
products.Add(prduct);
}
var产品=新列表(grid.SelectedRows.Count);
for(int index=0;index
即使使用DataGridViewCellEventArgs e
也可以吗?我正在使用事件单元格双击