0

我正在使用窗口应用程序、VB、VS 2012、.net F/W- 4.5
我有一个 DGV (datagridview) 形式。DGV 中有不同类型的列(dgv-combobox、dgv-textbox)是在运行时创建的。

代码:DataGridViewTextBoxCell 的 textchanged 事件(使用 addhandler 创建的运行时)

 Private Sub txt_box_textchanged(sender As Object, e As EventArgs)
        Dim a, b, total_price As Int32
        a = dgv.Rows(0).Cells(3).Value
        b = dgv.Rows(0).Cells(4).Value
        total_price = a * b
        dgv.Rows(0).Cells(5).Value = total_price
 End Sub

DGV 输入截图:
如果我更改输入值(文本框 a 或 b 中的任何一个),它不会影响输出。
换句话说,输出不是应该的,比如 5*3=15, 4*9=36
但是如果我改变单元格并改变那个单元格的值,那么输出将是以前的输入(当最后一次单元格被改变时)。
否则输出保持不变,直到输入来自同一个单元格。
我所说的“更改单元格”是指单击 DGV 的任何其他单元格,除了当前单元格。
请注意,图像中的所有行都是单独的输入(只有一行 - 不是 DGV 的多行)。

我还使用相同的代码尝试了文本框的“key up”事件,但同样的问题。请大家帮我解决这个问题。

4

0 回答 0