type THackGridColumn = class(TcxGridColumn); THackcxCustomEdit = class(TcxCustomEdit);function GetcxGridCellDisplayValue(AGridListColumn: TcxGridColumn):string; var lEdit : THackcxCustomEdit; begin Result := ''; if AGridListColumn = nil then Exit; with THackGridColumn(AGridListColumn).Controller do begin lEdit := THackcxCustomEdit(EditingController.Edit); if lEdit <> nil then Result := lEdit.DisplayValue; end; end;
例如:
if DataSet.Fields[0].AsString <> '' then
Showmessage('有内容');如果不行,就先使cxGrid失去焦点,再获得焦点 SetFocus
dataset至少应该是insert或者edit,两个状态的其一吧,不然当然没办法操作!自己设定状态就是了。
THackGridColumn = class(TcxGridColumn); THackcxCustomEdit = class(TcxCustomEdit);function GetcxGridCellDisplayValue(AGridListColumn: TcxGridColumn):string;
var
lEdit : THackcxCustomEdit;
begin
Result := '';
if AGridListColumn = nil then
Exit;
with THackGridColumn(AGridListColumn).Controller do
begin
lEdit := THackcxCustomEdit(EditingController.Edit);
if lEdit <> nil then
Result := lEdit.DisplayValue;
end;
end;