复选框更新功能

时间:2014-03-12 14:30:15

标签: asp.net vb.net checkbox

我有20个复选框要处理,但我不想写20个IF,如

      If MGTReview.GetCPO = 1 Then
            Checkbox1.Checked = True
        Else : Checkbox1.Checked = False
        End If

在数据拉动中,然后写出20个IF,如

          Dim CPO as boolean
           If Checkbox1.Checked = True, CPO=1
          Else: CPO=0
          End If

所以我有一个注册用户控件,公共属性如下:

    Public Property checkResult() As Integer
    Get
        Return _checkResult
    End Get
    Set(ByVal value As Integer)
        _checkResult = value
        Select Case _checkResult
            Case 1
                CheckBoxA.Checked = True
            Case 0
                CheckBoxA.Checked = False
        End Select
    End Set
      End Property

我页面后面的vb代码是

        Checkbox2.checkResult = MGTReview.GetCPOP
        Checkbox3.checkResult = MGTReview.GetCCA
        Checkbox4.checkResult = MGTReview.GetCCAP
        Checkbox5.checkResult = MGTReview.GetCR
        Checkbox6.checkResult = MGTReview.GetCP

...

现在从1转换为checked = true效果很好,我可以在网站上看到它们。但如果我取消选中一个框并单击“更新”,我的值不会从1更改为0.

我想知道我应该写什么课?我应该写另一个公共财产(我实际上是公共财产的新手)吗?

感谢您的建议!

1 个答案:

答案 0 :(得分:1)

如果你真的想要这样做,我认为做这样的事情会更容易:

chkCPOP.Checked = (MGTReview.GetCPOP = 1)

你可能想看一下数据绑定控件的复制,已经对这个问题有所了解: ASP.NET Binding integer to CheckBox's Checked field