Vb.net Visual Basic住院时间计算器

Vb.net Visual Basic住院时间计算器,vb.net,visual-studio-2010,Vb.net,Visual Studio 2010,所以我正在写这个程序,它应该返回住院的总费用。除了最重要的部分…住院总费用外,一切似乎都很顺利。我到处寻找一个可能的解决办法,但毫无结果。无论我做什么,程序都会继续返回0.00美元。没有错误消息,每次只需$0.00。我意识到我还没有包括异常处理,一旦我解决了问题,我就会这样做。知道我的问题是什么吗?提前谢谢 Const decRatePerDay As Decimal = 350.0 Private Sub btnCalculate_Click(sender As Object, e As E

所以我正在写这个程序,它应该返回住院的总费用。除了最重要的部分…住院总费用外,一切似乎都很顺利。我到处寻找一个可能的解决办法,但毫无结果。无论我做什么,程序都会继续返回0.00美元。没有错误消息,每次只需$0.00。我意识到我还没有包括异常处理,一旦我解决了问题,我就会这样做。知道我的问题是什么吗?提前谢谢

Const decRatePerDay As Decimal = 350.0

Private Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles btnCalculate.Click
    Dim NumOfDays As Integer
    Dim MedCharges As Decimal
    Dim SurgicalCharges As Decimal
    Dim LabFees As Decimal
    Dim RehabCharges As Decimal
    Dim TotalCharges As Decimal

    NumOfDays = CDec(txtNumOfDays.Text)
    MedCharges = CDec(txtMedCharges.Text)
    SurgicalCharges = CDec(txtSurgicalCharges.Text)
    LabFees = CDec(txtLabFees.Text)
    RehabCharges = CDec(txtLabFees.Text)

    lblCalTotalCost.Text = TotalCharges.ToString("c")
End Sub

Function CalcStayCharges(NumOfDays As Integer) As Decimal
    Dim decCostOfStay As Decimal
    NumOfDays = CDec(txtNumOfDays.ToString)
    decCostOfStay = NumOfDays * decRatePerDay
    Return decCostOfStay
End Function

Function CalcMiscCharges(MedCharges As Decimal, SurgicalCharges As Decimal, LabFees As Decimal, RehabCharges As Decimal) As Decimal
    Dim TotalMisc As Decimal
    MedCharges = CDec(txtMedCharges.ToString)
    SurgicalCharges = CDec(txtSurgicalCharges.ToString)
    LabFees = CDec(txtLabFees.ToString)
    RehabCharges = CDec(txtLabFees.ToString)
    TotalMisc = MedCharges + SurgicalCharges + LabFees + RehabCharges
    Return TotalMisc
End Function

Function CalcTotalCharges(CostOfStay As Decimal, TotalMisc As Decimal) As Decimal
    Dim TotalCharges As Decimal
    TotalCharges = CostOfStay + TotalMisc
    lblCalTotalCost.Text = TotalCharges.ToString("c")
    Return TotalCharges
End Function

您从未设置过总费用的值,也从未调用函数来计算总费用

改变

lblCalTotalCost.Text = TotalCharges.ToString("c")


您是否尝试过逐步调试以查看
0.00
的值是如何计算的?你可能在某处有一个乘零错误。问题可能是您的<代码> CDec <代码>调用,考虑使用<代码>十进制。TyPARSE < /C> >。您尝试过调试或通过代码吗?应该很清楚,您从未设置过
TotalCharges
的值,计算费用的函数都没有被调用过
lblCalTotalCost.Text = CalcTotalCharges(CalcStayCharges(NumOfDays), _
                           CalcMiscCharges(MedCharges, SurgicalCharges, LabFees, RehabCharges)) _
                           .ToString("C")