读书人

cxgrid 单元格值跟着另一单元格值变化

发布时间: 2013-02-27 10:48:11 作者: rapoo

cxgrid 单元格值随着另一单元格值变化而变化
如题,cxgrid 绑定一个数据集 (ADOQuery 对应 DataSource),其中 数量,单价两列是可编辑的,金额不可编辑,当数量或单价的单元格值变掉后,金额的单元格值也要跟着变化。 有知道的大虾请帮忙解答,谢谢!
[解决办法]

//选中列, Properties-> onEditValueChanged事件
procedure TForm11.cxgrdclmncxgrdtblvwcxgrd1TableView1Column1PropertiesEditValueChanged(
Sender: TObject);
var
quantity, price : Currency;
begin
//提交数据
cxgrdtblvw.DataController.Post();

//获取数量 cxgrdclmn_quantity是数量列名称
quantity := cxgrdtblvw.DataController
.Values[cxgrdtblvw.Controller.FocusedRecordIndex, cxgrdclmn_quantity.Index];
//获取单价 cxgrdclmn_price是单价列名称
price := cxgrdtblvw.DataController
.Values[cxgrdtblvw.Controller.FocusedRecordIndex, cxgrdclmn_price.Index];

//获取单价 cxgrdclmn_total是金额列名称
cxgrdtblvw.DataController
.Values[cxgrdtblvw.Controller.FocusedRecordIndex, cxgrdclmn_total.Index] :=
price * quantity;
end;

[解决办法]
dbtable, 如果是用ADOQuery, 就在adoquery中设置计算字段, 然后将计算字段绑定到column上

1楼的方法是针对Table的

读书人网 >.NET

热点推荐