把代码改了一下,声明了一个数组a,把一个dataGridView一行的所有列的值存进数组,再将数组的值依次赋给另一个dataGridView控件的一行,代码如下:
public static string[] a;
int index = dataGridView1.CurrentRow.Index;
a = new string[dataGridView1.ColumnCount];
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
a[i] = dataGridView1.Rows[index].Cells[i].Value.ToString();
}
DataGridTextBoxColumn tb = new DataGridTextBoxColumn();
dataGridView2.Rows.Add(tb);
for (int i = 0; i < dataGridView2.ColumnCount; i++)
dataGridView2.Rows[dataGridView2.RowCount - 2].Cells[i].Value = a[i];
可是运行程序却出现了异常,提示信息如下:
************** 异常文本 **************
System.InvalidOperationException: 不能向没有列的 DataGridView 控件添加行。必须首先添加列。
在 System.Windows.Forms.DataGridViewRowCollection.AddInternal(Boolean newRow, Object[] values)