0

一个DataGridView.CurrentCell属性是否有可能不存在但对其属性null具有价值?如果是这样,我该如何防止这种情况发生?nullRowIndex

SelectionChanged额外信息:在事件上检查此值,DataGridView以将当前选定行的索引存储在类字段中。

代码如下:

private void dgTraffic_SelectionChanged(object sender, EventArgs e)
{
    try
    {
        if (dgReport.CurrentCell != null)
            actualRow = dgReport.CurrentCell.RowIndex;
    }
    catch (NullReferenceException ex)
    {
    #if DEBUG
        MessageBox.Show("Error on dgTraffic_SelectionChanged:\n" + ex.Message);
    #endif
    }
}

不知何故,我在引用 RowIndex 属性的行上得到了一个未处理的 NullReferenceException,所以我添加了 try-catch,但我不知道这是怎么发生的。顺便说一句,我意识到方法名称是“dgTraffic”,方法主体中使用的对象是 dgReport。实际上就是这样设置的,这就是 dgReport 的 SelectionChanged 事件使用的方法。

4

0 回答 0