类变量没有保持价值

时间:2013-02-21 00:06:43

标签: asp.net vb.net

您好我有一个名为tableClass的类,它存储一个名为totalHours的双变量。我想把这个变量放在readonly属性中。问题是totalHours的值不断重置为0。不确定我是否声明变量错误或不是,我也尝试将值存储在viewstate中,同样的问题就出现了。有什么建议?有任何问题让我知道。谢谢!

表类

Public Class tableClass
    Inherits System.Web.UI.Page
    Private TotalHours As Double = 0

    Private Sub AddNewRow(ByVal hrsTextBox as TextBox)

        TotalHours = TotalHours + CDbl(hrsTextBox.Text)
    End Sub

    ReadOnly Property RegHours() As Double
        'Returns the total hours so far recorded
        Get
            Return TotalHours
        End Get
        End Property
   End Class

默认

Protected Sub btnAddDate_Click(sender As Object, e As EventArgs)
        dim dateTable as New tableClass

        dateTable.AddNewRow(hrsTextbox)
End Sub

 Protected Sub HoursChange(sender As Object, e As EventArgs)
            LabelHoursTotal.Text = (dateTable.RegHours + CDbl(TextBoxHours.Text)).ToString
 End Sub

ASPX

<asp:TextBox ID="txtHours" runat="server" width ="90" Text = "0" AutoPostBack="True" OnTextChanged ="HoursChange"></asp:TextBox>

<asp:Label id="lblHoursTotal" runat="server" Text = "0"></asp:Label>

<asp:Button ID="btnAddHour" runat="server" Text="Add New Row" OnClick="btnAddHour_Click" />

1 个答案:

答案 0 :(得分:1)

您需要以某种方式存储值,当涉及到Web应用程序时,根据情况和需求,使用ViewState或Session是个好主意。 ViewState特定于页面,Session特定于用户。