请教,c# CheckBox  数据库输出,如果值是0 ,就不选。值是1,就勾选。
   不要用IF判断,那样很麻烦,特别多 CheckBox   一个一个判断,得写很长代码。麻烦。
请教各位,有方法,让数据库输出值的时候,直接用方法让 CheckBox 勾选,或者不勾选吗?我数据库里是int类型 输出都是 0或者1请教各位

解决方案 »

  1.   

    要想实现你那种效果,你不想让界面组件和数据集信息有对应关系才可以,比如checkbox的名字和数据库中对应,这样可以通过一个通用的方法去设置
      

  2.   

    private void f (CheckBox cb,int a)
    {cb.checked=(a==0?false:true);}
      

  3.   

    checkbox.Checked = value == 1;
      

  4.   

    DataGridView 用CheckBoxColumn列,绑定下就可以了
      

  5.   

    如果你把数据库里面的类型改为bit会有想不到效果
      

  6.   

    function  LoadCheckBox(){
           var c=document.getElementsByTagName("input");
           
           for(var i=0;i<c.length;i++)
           {
                if(c[i].value==1)
                {
                    c[i].checked="checked";
                }
           }
        }
    昨天刚刚做了一个这个功能的,将所有的<input type="checkbox" value='<%#Eval("数据库字段名称")%>'>得到,然后根据里边的value值改变是否为选中
      

  7.   

    当然,如果页面上还有其余的input标签的话,那你就给你的checkbox加一个共同的name,如cbx,然后将document.getElementsByTagName("input");改为document.getElementByName("cbx");
      

  8.   

    另外,如果使用JS的话,记得将这段JS代码放在你的那个div下边,如果使用jquery的$(document).ready的话就没问题了
      

  9.   

    我的是c# winform
      在winform界面放一个 checkBox  然后 load加载窗口的时候,
    数据库取值输出,到checkBox ,就想直接赋值到checkbox让他识别 0就是不选,1就是选千万别用每一个都IF判断。那样太多代码了。
      

  10.   

    感谢3楼,最后做好了,在数据库输出的时候。写入
    this.控件名称.Checked = (dr["列名"].ToString() == "1" ? true : false);