【问题标题】:checkbox updating features复选框更新功能
【发布时间】:2014-03-12 23:08:51
【问题描述】:

我有 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 到 check=true 的转换效果很好,我可以在网站上看到它们。但是如果我取消选中一个框并单击“更新”,我的值不会从 1 变为 0。

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

感谢您的建议!

【问题讨论】:

  • 你的更新代码怎么样?
  • 您可能需要为复选框控件考虑更具描述性的名称。

标签: asp.net vb.net checkbox


【解决方案1】:

如果这确实是您想要的方式,我认为这样做会更容易:

chkCPOP.Checked = (MGTReview.GetCPOP = 1)

您可能想查看复选框控件的数据绑定,请查看以下问题: ASP.NET Binding integer to CheckBox's Checked field

【讨论】:

  • 看起来很棒!我会试一试,让你知道结果!谢谢你的建议!
  • 非常感谢!它工作得很好!我现在可以忘记注册的用户控件。
猜你喜欢
  • 1970-01-01
  • 2021-01-21
  • 2014-02-14
  • 1970-01-01
  • 1970-01-01
  • 2023-03-07
  • 1970-01-01
  • 2011-09-09
  • 2014-04-15
相关资源
最近更新 更多