C# 我们如何通过编程将数据从datagrid添加到列表中?
我有下面的代码,但是列表没有从datagrid获取精确的值C# 我们如何通过编程将数据从datagrid添加到列表中?,c#,.net,list,datagrid,C#,.net,List,Datagrid,我有下面的代码,但是列表没有从datagrid获取精确的值 public List<double[]> ExtractGridData(DataGridView grid) { int numCols = grid.Columns.Count; List<double[]> list = new List<double[]>(); double[] cellsData = new double[
public List<double[]> ExtractGridData(DataGridView grid)
{
int numCols = grid.Columns.Count;
List<double[]> list = new List<double[]>();
double[] cellsData = new double[numCols];
foreach (DataGridViewCell cell in grid.SelectedCells)
{
if (cell.Value != null)
cellsData[cell.RowIndex] = Convert.ToDouble(cell.Value);
list.Add(cellsData);
}
return list;
}
public List ExtractGridData(DataGridView网格)
{
int numcolls=grid.Columns.Count;
列表=新列表();
double[]cellsData=新的double[numCols];
foreach(网格中的DataGridViewCell单元格。SelectedCells)
{
if(cell.Value!=null)
cellsData[cell.RowIndex]=Convert.ToDouble(cell.Value);
列表。添加(cellsData);
}
退货清单;
}
我想你需要做的就是搬家:
double[] cellsData = new double[numCols];
在循环的开始处。目前,您在每次迭代中都使用相同的数组实例。尝试将此代码作为从网格中提取特定列的数据
public List<double> ExtractGridData(DataGridView grid)
{
int numCols = grid.Columns.Count;
List<double> list = new List<double>();
int i = 0;
double[] cellsData = new double[numCols];
foreach (DataGridViewRow row in grid.SelectedRows)
{
if(row.Cells[2].Value != null)
{
string value = row.Cells[2].Value.ToString();// third columnn of Grid as //Example
list.Add(Convert.ToDouble(value));
}
}
return list;
}
public List ExtractGridData(DataGridView网格)
{
int numcolls=grid.Columns.Count;
列表=新列表();
int i=0;
double[]cellsData=新的double[numCols];
foreach(网格中的DataGridViewRow行。SelectedRows)
{
if(行。单元格[2]。值!=null)
{
string value=row.Cells[2].value.ToString();//网格的第三列作为//示例
list.Add(Convert.ToDouble(value));
}
}
退货清单;
}
要检索整个网格数据或选定单元格/行中的数据吗