通配符和复选框上的值不起作用

本文关键字:不起作用 复选框 通配符 | 更新日期: 2023-09-27 18:04:39

很抱歉我的问题写得不好,是时候重新编辑了。当使用文本框时,我有has value方法来确定值是否为空,并且我可以使用通配符操作符,例如

下面
if (_currentiandEValues.STEP_CHANGE_SCHOOL_ACTIVTIES == 0)
 childpocketmoney.Value = Decimal.Round(_dal.getiandEData(_myuser.id, STEP_CHANGE_SCHOOL_ACTIVTIES"), 2);
else
{
  childpocketmoney.Value _currentiandEValues.STEP_CHANGE_SCHOOL_ACTIVTIES.HasValue ? Decimal.Round((decimal)_currentiandEValues.STEP_CHANGE_SCHOOL_ACTIVTIES, 2) : defaultvalue;
}

我如何对复选框控件做同样的事情呢?例如,我在这一行得到一个null错误

chkRedundancy.Checked = (bool) _record.redundancyRecieved;

这只是一个问题,但当我尝试下面我得到相同的错误可空对象必须有一个值?

  chkRedundancy.Checked = (bool) _record.redundancyRecieved  ? true : fals;

所以我需要能够做同样的上面有值,但一个复选框。

PS数据库中的值只能为真或假,所以

但这似乎是不正确的语法有人对通配符和复选框有什么建议吗?顺便说一下,这两个值都是布尔值

报错

[InvalidOperationException: Nullable object必须有一个值]System.ThrowHelper。throw winvalidoperationexception (ExceptionResource resource) +56System.Nullable 1. get_value () + 2714906portal.myaccount.ChangeInCircumstance。在C:'Projects'dashboard6'portal'myaccount' changeincenvironment .aspx.cs:679中的Page_Load(对象发送者,EventArgs e)System.Web.UI.Control。OnLoad(EventArgs e) +109System.Web.UI.Control.LoadRecursive () + 68System.Web.UI.Page。ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4498

通配符和复选框上的值不起作用

。Checked期望boolean

bool defaultvalue = false;
chkRedundancy.Checked = _record.redundancyRecieved.HasValue;
chkReducedHoursWork.Checked = _record.reducedHours.HasValue ? _record.reducedHours > 0: false;

将是有效的语法,但如果不知道要实现什么,就很难知道。?

对于复选框,我所要做的似乎只是类似的语句,这就给了我想要的结果

chkRedundancy.Checked = (bool)_record.redundancyRecieved.HasValue ? true : false;