2013-02-22 54 views
0

我想使用CellEndEdit事件來執行簡單的計算。我有以下代碼:計算列

Private Sub DataGridView2_CellEndEdit(ByVal sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView2.CellEndEdit 

    Dim Total As DataGridView = DirectCast(sender, DataGridView) 

    If IsDBNull(Total(0, e.RowIndex).Value) Then Exit Sub 

    Total("C3", e.RowIndex).Value = Total("C1", e.RowIndex).Value + Total("C2", e.RowIndex).Value 

End Sub 

但是當我進入20到兩個欄C1C2C3是顯示2020,而不是40,請幫我出這一點。

+0

非常感謝你們所有的答案。 – 2013-02-22 06:29:05

回答

1

那麼,如果Total("C1", e.RowIndex).Value的類型是字符串,則會將它們連接起來。 嘗試

Total("C3", e.RowIndex).Value = (((cint)Total("C1", e.RowIndex).Value) + ((cint(Total("C2", e.RowIndex).Value)).ToString() 

做一個補充。

HTH

1

當你正在處理字符串+運算符被用來 作爲CONCAT ...嘗試;

Total("C3", e.RowIndex).Value = CInt(Total("C1", e.RowIndex).Value) + CInt(Total("C2", e.RowIndex))