繁体   English   中英

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

[英]Set checkbox value from database in C# asp.net

我有8个checkboxes
page load事件中,我想编写如下代码
如果databasevalue"Submitted"checkbox将显示为checked
如果该value "Not Submitted" ,它将显示为unchecked

你可以有这样的事情

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;
    }

}

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

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

FROM Table_1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM