无法在datagridview中获取单元格离开事件的当前单元格值

时间:2012-12-17 06:13:39

标签: c# datagridview

当我离开那个单元格时,当我试图获取当前单元格的值时,我无法获得该单元格的值。我的代码在Cell_Leave事件中

    if (e.ColumnIndex == 5)
        {
            double netVal;
            double.TryParse(dgvRegister.Rows[e.RowIndex].Cells[4].Value.ToString(), out netVal);

            double Vat;
            double.TryParse(dgvRegister.Rows[e.RowIndex].Cells[5].Value.ToString(), out Vat);

            string amt = ((netVal / 100) * Vat).ToString();
        }

在这种情况下,当我来到单元格[5]时,我得到单元格[4]值.value我得到空值。为什么我得到一个空值?请帮我找到解决方案。

2 个答案:

答案 0 :(得分:4)

尝试将Value更改为EditedFormattedValue

dgvRegister.Rows[e.RowIndex].Cells[4].EditedFormattedValue.ToString()

答案 1 :(得分:0)

根据spajce的答案而不是dgvRegister.Rows[e.RowIndex].Cells[4],您还可以直接使用DataGridView的{​​{3}}属性。少一点代码。

dataGridView1.CurrentCell.EditedFormattedValue.ToString();

btw感谢spajce向我介绍EditedFormattedValue。我不知道。