我对C#编程很新。我想将DataGridView的用户输入带到DataTable。但是,我从这段代码中获得了ArgumentException
DataTable dd=new DataTable();
foreach (DataGridViewRow dr in dataGridView1.Rows)
{
dd.Rows.Add(dr);
}
我有什么方法可以解决它吗?我也想从dataGridView1
获得输入的替代方案
编辑:忘了提,dataGridView1
有一个comboBox列
edit2:错误读取“输入数组长于此表中的列数。”
答案 0 :(得分:1)
输入数组比此表中的列数长。
在向其添加行之前,您必须向DataTable
添加一列,例如:dd.Columns.Add("SomeColumnName")
。
但是,如果没有特别要求使用DataTable
,那么您应该使用List
来存储行。这是一个更简单的数据结构。
var listOfRows = gridView.Rows.Cast<DataGridViewRow>().ToList();