设置 cxGrid 的某列的 CellMerging 属性可使这一列相同值的单元格合并。
但是这样达不到我想要的效果,我是想根据某列的值,如果这一列值相同,才合并其它列值相同的单元格。
比如一个主从表数据表,列包括:出库单号、物料类别、物料名称,只有出库单号相同的一些行内,物料类别相同的才合并。这样可使数据显示更直观。我查了以前的帖子,没有,哪位高人指点一下?
但是这样达不到我想要的效果,我是想根据某列的值,如果这一列值相同,才合并其它列值相同的单元格。
比如一个主从表数据表,列包括:出库单号、物料类别、物料名称,只有出库单号相同的一些行内,物料类别相同的才合并。这样可使数据显示更直观。我查了以前的帖子,没有,哪位高人指点一下?
你说的没错!cxGrid 功能如此强大,本来以为靠设置 cxGrid 的属性就可以实现这个功能,
看来是不行,我会好好研究,争取实现这个功能。
Sender: TcxGridColumn; ARow1: TcxGridDataRow;
AProperties1: TcxCustomEditProperties; const AValue1: Variant;
ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties;
const AValue2: Variant; var AAreEqual: Boolean);
begin
if ARow1.Values[DBView1SYDID.Index] = ARow2.Values[DBView1SYDID.Index] then
AAreEqual := True
else
AAreEqual := False;
end;
但是我还有一个问题,就是合并后的单元格的值不能直接修改,要另外写代码,比较麻烦。
不知道有没有好的办法,可以直接修改,并立即显示修改后的值?