无法比较datagridview单元格的两个值

时间:2013-12-11 01:49:50

标签: vb.net datagridview compare

我已经将数据解析到这样的datagridview单元格中,

Me.DGV.Item(8, Me.DGV.RowCount - 2).Value = Decimal.Parse(datatab.Item(5, i).Value)
Me.DGV.Item(9, Me.DGV.RowCount - 2).Value = Decimal.Parse(datatab.Item(5, i).Value)

然后,在过程结束时,我将其作为验证原因进行比较(因为单元格[9,row]中的项目可能已编辑。比较就像这样,

If Decimal.Parse(Me.DGV.Item(9, i).Value) = Decimal.Parse(Me.DGV.Item(8, i).Value + "000") Then
    MessageBox.Show("Jumlah tidak sesuai dengan Nominal", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
    Exit Function
End If

因此,结果可能是真的,而它具有相同的值或相反的条件下没有。但在我的情况下,它将返回false值,而值是相等的和真值,而值不相等。 有人想出来了吗?

1 个答案:

答案 0 :(得分:0)

在If行放置一个断点并检查相等比较的两侧。 通常,如果要在功能上处理的十进制数末尾添加三个零,则在已经解析后更方便地操作数字本身。 所以我会做像

这样的事情
If Decimal.Parse(Me.DGV.Item(9, i).Value) = Decimal.Parse(Me.DGV.Item(8, i).Value) * 1000 Then

另外,检查网格中的值是否具有decimal.Parse所需输入的正确格式。