州不保留在复选框中

时间:2009-09-08 16:26:24

标签: .net asp.net vb.net web checkbox

我的网络表单中有一个复选框。每当我勾选它...并点击后退按钮它将不会保持其状态..当我使用下一个按钮返回到同一页面时。

注意:控件中启用了视图状态

页面加载事件中没有代码

以下代码:

Protected Sub chkBx_SR_wu_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles chkBx_SR_wu.SelectedIndexChanged
    Dim i As Integer
    i = 0
    Try
        For i = 0 To chkBx_SR_wu.Items.Count - 1
            If chkBx_SR_wu.Items(i).Selected Then
                Select Case chkBx_SR_wu.Items(i).Value
                    Case "SR_MR"
                        chkbx_SR.Checked = True
                    Case "Sk_MR"
                        chkbx_SkRoom.Checked = True
                    Case "SC_SS"
                        chkbx_admin.Checked = True
                    Case "CS_MR"
                        chkbx_salesFloor.Checked = True
                    Case "TEAM_LEADER"
                        rb_tl.Enabled = True
                        chkbx_tlAdmin.Enabled = True
                        chkbx_tlJewellery.Enabled = True
                        chkbx_tlSalesFloor.Enabled = True
                        chkbx_tlSkRoom.Enabled = True
                        rb_tl.Items(0).Enabled = True
                        rb_tl.Items(1).Enabled = True
                        rb_tl.Items(2).Enabled = True
                        rb_tl.Items(3).Enabled = True
                        ReqiredFieldValidator1.Enabled = True



                End Select
            Else
                Select Case chkBx_SR_wu.Items(i).Value
                    Case "SR_MR"
                        chkbx_SR.Enabled = False
                        chkbx_SR.Checked = False
                    Case "Sk_MR"
                        chkbx_SkRoom.Enabled = False
                        chkbx_SkRoom.Checked = False
                    Case "SC_SS"
                        chkbx_admin.Enabled = False
                        chkbx_admin.Checked = False
                    Case "CS_MR"
                        chkbx_salesFloor.Enabled = False
                        chkbx_salesFloor.Checked = False
                    Case "TEAM_LEADER"
                        chkbx_tlAdmin.Enabled = False
                        chkbx_tlAdmin.Checked = False
                        chkbx_tlJewellery.Enabled = False
                        chkbx_tlJewellery.Checked = False
                        chkbx_tlSalesFloor.Enabled = False
                        chkbx_tlSalesFloor.Checked = False
                        chkbx_tlSkRoom.Enabled = False
                        chkbx_tlSkRoom.Checked = False
                        rb_tl.Items(0).Enabled = False
                        rb_tl.Items(1).Enabled = False
                        rb_tl.Items(2).Enabled = False
                        rb_tl.Items(3).Enabled = False
                        ReqiredFieldValidator1.Enabled = False
                End Select
            End If
        Next

    Catch ex As Exception

    End Try
End Sub"

1 个答案:

答案 0 :(得分:1)

复选框不使用ViewState来保留其状态 - 它们使用HTTP POST有效内容的内容来确定是否将控件设置为Checked

如果您需要将此值保持在正常的回发周期之外,则需要将其存储在会话中或类似的地方,以便在该时间范围之后存活。