首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

cxgrid的boolean类型的列,绑定到数据表的bit类型字段,字段默认值为0,解决方法

2012-03-26 
cxgrid的boolean类型的列,绑定到数据表的bit类型字段,字段默认值为0,cxgrid的boolean类型的列(复选框形式

cxgrid的boolean类型的列,绑定到数据表的bit类型字段,字段默认值为0,
cxgrid的boolean类型的列(复选框形式显示),绑定到数据表的isStop(bit类型)字段,该字段默认值为0,

执行语句

Delphi(Pascal) code
qry1.append;

cxgrid增加一行,但是,cxgrid的列的状态为选中状态。

我在qry1.append;语句后增加了一行 qry1.fieldbyname('isstop').asboolean:=false; 
但,新增行后,该列默认还是选中状态。
执行qry1.post语句后,该列的复选框还是选中状态,(这时候,查看数据表中新增的数据,发现isStop的值为0,该值为0,复选框应该为未选中状态啊)

只有重新qry1.close;qry1.open; 后,才能显示为未选中状态。


这是什么原因呢?如何解决?


[解决办法]
qry1.requery();
[解决办法]
'isstop'你的这个静态字段里面有个DEfaultExpression,这样的属性,你在这里设置其值为FALSE
[解决办法]
qry1.fieldbyname('isstop').DEfaultExpression.Value := false;

记得有VALUE属性吧,上面这句代码你在窗体ONSHOW事件上加上
[解决办法]
Delphi(Pascal) code
qry1.fieldbyname('isstop').DefaultExpression := QuotedStr('False'); 

热点排行