这是没有办法的事情,BOOL必须对应于BIT型。如果你想根据NUMERIC的值进行判断来确定BOOL的值的真假,那么你可以通过自定义列来实现:在自定义列中,使用一个CHECKBOX控件,然后绑定CHECKBOX的CHECKED到NUMERIC字段,但在绑定过程中要对NUMERIC进行处理,比如:<%#int.Parse(DataBinder.Eval(Container.DataItem,"Numeric").ToString())>=0?True:False%>或<%#this.BoolValue(DataBinder.Eval(Container.DataItem,"Numeric").ToString())%>
然后在代码中编写一个方法:
protected bool BoolValue(string blString)
{
int iTemp=int.Parse(blString);
if(iTemp>=0) 
return True;
else
return False;
}

解决方案 »

  1.   

    呵呵, triout(Daview) (  )已经说的很清楚了.我在解释一下好了.
    1.不要使用原来的 datagridboolcolumn,而是建立一个自定义列.
    2.采用一个间接的手段来获得真或假.正如triout上面的绑定表达式
    <%#int.Parse(DataBinder.Eval(Container.DataItem,"Numeric").ToString())>=0?True:False%>
    或者,后一种方法一样.你试试看.我也学习了一把,哈哈
      

  2.   

    可我是在window 应用程序下编,不是在web下!!!