从C#asp.net中的数据库中设置复选框值

本文关键字:设置 复选框 数据库 C#asp net | 更新日期: 2023-09-27 17:58:56

我有8个checkboxes
page load事件中,我希望编写代码,以便
如果database中的value"Submitted",则checkbox将出现checked
如果value"Not Submitted",则它将显示为unchecked

从C#asp.net中的数据库中设置复选框值

你可以有这样的

if(!Page.IsPostBack)
{
     var isChecked = dbvalue.ToLower() == "submitted" ? true : false;
     for (var i = 0; i < 8;i++ )
     {
         CheckBox chk = (CheckBox)Form.FindControl("chk" + i);
         if(chk != null) chk.checked = isChecked;
     }
}

您可以检查类似的值

if(!Page.IsPostBack)
{
    if(dbvalue=="Submitted")
    {
      chk1.checked=true;
      chk2.checked=true;
      chk3.checked=true;
      chk4.checked=true;
      chk5.checked=true;
      chk6.checked=true;
      chk7.checked=true;
      chk8.checked=true;
    }
    else if(dbvalue=="Not Submitted")
    {
        chk1.checked=false;
      chk2.checked=false;
      chk3.checked=false;
      chk4.checked=false;
      chk5.checked=false;
      chk6.checked=false;
      chk7.checked=false;
      chk8.checked=false;
    }
}

如果不想在代码后面做任何事情,一个更快、更简单的方法是在select查询上创建一列新的数据类型位,然后将复选框绑定到它。0=假,1=真。例如:

SELECT
CAST((CASE WHEN SubmitColumn = 'Submitted' THEN
    1
ELSE
    0
END) AS BIT) AS chkValue
FROM Table_1