当我离开那个单元格时,当我试图获取当前单元格的值时,我无法获得该单元格的值。我的代码在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我得到空值。为什么我得到一个空值?请帮我找到解决方案。
答案 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
。我不知道。