使用c#获取新输入的DataGridView单元格值

时间:2014-07-18 09:37:58

标签: c# datagridview

我正在尝试在单元格为空之前获取DataGridView的新单元格值。我正在使用C#和这段代码:

private void gridViewTimes_CellLeave(object sender, DataGridViewCellEventArgs e)
{
    string value = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
}

当单元格值之前不为null时,这可以正常工作。但是如果在抛出异常之前单元格为null

例外:

Object reference not set to an instance of an object

我对此有点困惑,因为当我离开单元格时,我在单元格中写了一些东西,所以它不再是空的。或者我理解这个错误?

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

在分配之前检查该值是否为空:

private void gridViewTimes_CellLeave(object sender, DataGridViewCellEventArgs e)
{
    if(dataGridView1.Rows[e.RowIndex].Cells[0].Value != null)
    {
        string value = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
    }
}

答案 1 :(得分:1)

在值实际发生变化之前,

CellLeave事件是fring。使用CellValueChanged事件。