请问我从oracle中读出一字段,只有0或1这两种数字,我想通过判断0或1来给GridView表中的一个字段里的CheckBox作选中和不选中状态.请大侠们写一下代码让我参考一下。

解决方案 »

  1.   

    不要代码,
    可以直接GridView的属性设置!
      

  2.   

    <asp:CheckBox ID="asp_chbIsChecked" Checked='<%# DataBinder.Eval(Container, "DataItem.IsChecked") %>' runat="server" />                                        
      

  3.   

    你可以不用判断是0或1,0是false.1是true
      

  4.   

    四楼说的是对的,但也可以这样
    http://hi.baidu.com/%C0%C1%B9%EA/blog/item/a9999e24a65157308644f954.html
      

  5.   

    不用判断???我的数据库里就是0或1,读出来不用判断就可以在CheckedBox里显示选中或没出息选中状态吗?
      

  6.   

                this.Column1.FalseValue = "0";
                this.Column1.TrueValue = "1";
      

  7.   

    直接的,你可以在RowDataBound事件这样处理一下,在gridView的属性DataKeyNames设置为你的字段"field",然后编写代码: protected void gridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
    if (e.Row.RowType != DataControlRowType.DataRow)
    {
    return;
    }
    object objCheck = this.gridView.DataKeys[e.Row.RowIndex].Values["field"]; CheckBox checkBox = e.Row.FindControl("checkBox") as CheckBox;
    if (checkBox != null)
    {
    checkBox.Checked = object.Equals(objCheck, 1);
    }
    }
      

  8.   

    你可以在grd_RowDataBound事件里判断是0或1,0是false.1是true,再找到你的CheckedBox,給其賦值就可以
    例如:在grd_RowDataBound事件里
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
         DataRowView rowView = (DataRowView)e.Row.DataItem;
         CheckBox cbCheck = (CheckBox)e.Row.FindControl("checkBox");
         if (Convert.ToInt32(rowView["boolMark"]) == "1")
         {
            cbCheck.Checked=true;
         }
         else
        {
          cbCheck.Checked=false;
        }
    }