【发布时间】:2014-04-20 07:23:20
【问题描述】:
我的 Windows 应用程序中有一个 datagridview。我想在其中使用 datagridview 单元格(来自数量、价格、税金、折扣)值计算总金额并显示在总 gridview 单元格中。 但是我收到了这个错误。我也采用了可为空的类型。如何克服这个问题。 ? 这是我的 cellendit 事件代码
private void datagrid_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
int val1 = Convert.ToInt32(datagrid.Rows[e.RowIndex].Cells[2].Value);
int val2 = Convert.ToInt32(datagrid.Rows[e.RowIndex].Cells[3].Value);
int val3 = Convert.ToInt32(datagrid.Rows[e.RowIndex].Cells[4].Value);
int val4 = Convert.ToInt32(datagrid.Rows[e.RowIndex].Cells[5].Value);
datagrid.Rows[e.RowIndex].Cells[6].Value = ((val2 + val3) * val1) - val4;
}
【问题讨论】:
-
在将其转换为 Int32 之前,您需要检查每个单元格值是否为空
-
在您的数据源中包含计算列也许是个好主意?
标签: c# winforms datagridview