如何控制dxDBInspector或cxDBVerticalGrid的每一行的属性,
本人想实现动态连接ClientDataSet,从而一个dxDBInspector或cxDBVerticalGrid就可以实现所有的表的录入,
dxDBInspector或cxDBVerticalGrid的每一行的Change type 都可以动态的单独设定,从而实现每行是MEMO的图片的还是可选择的还是日期的录入格式。
说明:dxDBInspector或cxDBVerticalGrid那个控件都可以。
本人想实现动态连接ClientDataSet,从而一个dxDBInspector或cxDBVerticalGrid就可以实现所有的表的录入,
dxDBInspector或cxDBVerticalGrid的每一行的Change type 都可以动态的单独设定,从而实现每行是MEMO的图片的还是可选择的还是日期的录入格式。
说明:dxDBInspector或cxDBVerticalGrid那个控件都可以。
用起来让人放心呼?
var
I: Integer;
AItem: TcxDBEditorRow;
begin
ShowHourglassCursor;
try
cxDBVerticalGrid.BeginUpdate;
try
with cxDBVerticalGrid.DataController.DataSet do
for I := 0 to FieldCount - 1 do
begin
AItem := TcxDBEditorRow(cxDBVerticalGrid.Add(TcxDBEditorRow));
with AItem.Properties do
begin
DataBinding.FieldName := Fields[I].FieldName;
Caption := DataBinding.DefaultCaption;
if Fields[I].DataType=FtMemo then
begin EditPropertiesClassName:='TcxBlobEditProperties';
end;
if Fields[I].DataType=ftDataSet then
begin
cds:=Tclientdataset.Create(application);
cds.DataSetField:=TDataSetField(Fields[I]);
cds.Active:=true;
cds.Edit;
EditPropertiesClassName:='TcxButtonEditProperties';
TcxButtonEditProperties(EditProperties).OnButtonClick:=ButtonClickDemo;
end;
end;
AItem.Visible := Fields[I].Visible; end;
finally
vv.EndUpdate;
end;
finally
HideHourglassCursor;
end;
end;