【问题标题】:set Checkbox value from Datareader从 Datareader 设置复选框值
【发布时间】:2016-02-10 22:49:42
【问题描述】:

我正在尝试将信息从数据库中提取到表单中。

数据库将复选框值存储为单个(-1 为真,0 为假)

但是我无法用这个设置复选框的 .checked 状态。

frmTool.chkMeterFake.CheckState = dr("VALIDATE")

我也试过

frmTool.chkMeterFake.CheckState = Convert.ToBoolean(dr("VALIDATE"))

【问题讨论】:

  • 为什么不使用bit 列?

标签: vb.net checkbox sqldatareader


【解决方案1】:

尝试使用Checked 属性而不是CheckState

frmTool.chkMeterFake.Checked = Convert.ToBoolean(dr("VALIDATE"))

当您希望复选框具有三种可能的状态时,CheckState 属性很有用:选中、未选中或未设置。

【讨论】:

  • 知道这将是一件简单的事情,我可以忽略。这已经奏效了,谢谢
【解决方案2】:

为什么不使用 bit 列作为布尔值?

但是,你可以使用这个:

Dim validateIndex = dr.GetOrdinal("Validate")
frmTool.chkMeterFake.Checked = dr.GetFloat(validateIndex) = 0

【讨论】:

  • 我没有建立数据库。我只是算自己幸运,它不是一个字符串。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多