【问题标题】:Adding the values of 2 textboxes to display result in one of them添加 2 个文本框的值以在其中一个中显示结果
【发布时间】:2014-02-17 14:38:23
【问题描述】:

在我的表单上,我有 2 个名为“txtsurcharges.text”和“txttotal.text”的文本框

txttotal 从 mysql 表中检索一个值,但我想要发生的是,当我在 txtsurcharges 中输入一个值并在 txttotal 中显示结果时,这个值会被添加。

这是我的 txtsurcharges 代码:

txtsurcharges.Text = String.Format("£{0}", txtsurcharges.Text)

这是我的 txttotal 代码:

Private Sub cbxPaymentID_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbxPaymentID.SelectedIndexChanged
        Dim dss As New DataSet
        If (cbxPaymentID.SelectedIndex <> -1) Then
            Dim daa As New MySqlDataAdapter("SELECT * from payment_details WHERE PaymentID=@PID", _
            objconnection)
            daa.SelectCommand.Parameters.AddWithValue("@PID", Convert.ToInt32(cbxPaymentID.SelectedValue))
            daa.Fill(dss)
            txttotal.Text = dss.Tables(0).Rows(0)("ServicePayment").ToString()

        End If
    End Sub

这是我添加 2 个值的代码,但不起作用:

Private Sub txtsurcharges_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtsurcharges.TextChanged
        Dim c As Integer
        c = Val(txtsurcharges.Text) + Val(txttotal.Text)
        c = txttotal.Text
    End Sub

【问题讨论】:

    标签: mysql vb.net textbox add calculator


    【解决方案1】:

    试试这个(更新后显示 ASPX 和 VB 代码,带有几个静态值进行测试)

    aspx 代码

    <asp:TextBox ID="txtsurcharges" runat="server" Text="£5" AutoPostBack="true"></asp:TextBox>
        <asp:TextBox ID="txttotal" runat="server" Text="£5"></asp:TextBox>
    

    vb代码

    Private Sub txtsurcharges_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtsurcharges.TextChanged 
        Dim c As Integer 
        c = CInt(txtsurcharges.Text) + CInt(txttotal.Text) 
        txttotal.Text = c
    End Sub
    

    如您所见,您将 c 设置为 = 附加费和总计的总和,然后您将 c 重置回总计。

    如果我现在将 txtsurcharges 更改为 10,那么 txttotal 将更改为 15。

    您当然需要确保只能在 txtsurcharges 中输入数字。

    【讨论】:

    • 我收到错误“从字符串“£”到类型“整数”的转换无效”?
    • 啊...您应该尝试您的 Val() 语法...我虽然您的文本框中有数字。我会亲自将 £ 字符粘贴在文本框之外,并将文本框限制为数字。
    • 这是什么意思?我想将 £ 放在文本框之外更容易,但我已经为整个文本框完成了它,因为它使用 £ 获取值。
    • 基本上用这个代码Dim c As Integer c = Val(txtsurcharges.Text) + Val(txttotal.Text) txttotal.Text = c我可以看到两个值并且它们是正确的,唯一的问题是它们没有加在一起,知道吗?
    • OK Livaren... 如果您将鼠标悬停在 Val 上,您会看到它正在尝试转换为 Double... 您的文本框中有 £ 和 p 吗?如果是这样, c 将四舍五入为一个完整的整数。接下来,您的 txtsurcharges 框上有 autobostback="true" 吗?
    猜你喜欢
    • 2020-06-03
    • 1970-01-01
    • 2020-07-25
    • 2021-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    相关资源
    最近更新 更多