【发布时间】:2018-06-07 05:42:26
【问题描述】:
我尝试使用此代码将选定的行从 datagridview2 移动到 datagridview1。但是当我单击添加按钮以从 datagridview2 移动选定的行时。它还添加到datagridview 2。但是通过异常发生错误“对象引用未设置为对象的实例”。如何解决这个问题。我的代码如下
private void button1_Click(object sender, EventArgs e)
{
try
{
this.dataGridView1.Rows.Clear();
foreach (DataGridViewRow row in dataGridView2.Rows)
{
int n = dataGridView1.Rows.Add();
bool checkedCell = (bool)dataGridView2.Rows[n].Cells[0].Value;
if (checkedCell == true)
{
dataGridView1.Rows[n].Cells[0].Value = row.Cells[1].Value;
dataGridView1.Rows[n].Cells[1].Value = row.Cells[2].Value;
dataGridView1.Rows[n].Cells[3].Value = row.Cells[3].Value;
}
}
}
catch (Exception ex)
{
MessageBox.Show(" Error " + ex.Message);
}
}
【问题讨论】:
-
您是否可以提供有关异常的更多详细信息?它抛出了哪条线?等等
-
@AntiqTech 一次运行 foreachloop 并在“bool checkedCell = (bool)dataGridView2.Rows[n].Cells[0].Value;”中抛出异常
-
bool checkedCell = (bool)dataGridView2.Rows[n].Cells[0].Value; 不应该是
bool checkedCell = (bool)row.Cells[0].Value;吗?另外:您显示的代码不是移动而是复制。
标签: c# datagridview