Hi,
ich füge Datensätze wie folgt ein:
Delphi-Quellcode:
...
// Ereignis der Treelist
TreeList.OnInitInsertingRecord := TreeViewInitInsertingRecord;
...
//
procedure TFRMBaseTreeList.TreeViewInitInsertingRecord(Sender: TObject;
AFocusedNode: TcxTreeListDataNode; var AHandled: Boolean);
Var
ADataSet: TDataSet;
AFieldName: String;
begin
if AFocusedNode <> nil then
begin
ADataSet := TcxDBTreeList(Sender).DataController.DataSet;
if ADataSet.State in [dsEdit, dsInsert] then
begin
AFieldName := TcxDBTreeList(Sender).DataController.ParentField;
if (GetKeyState(VK_SHIFT) < 0) then
ADataSet.FieldByName(AFieldName).AsInteger := AFocusedNode.KeyValue
else
ADataSet.FieldByName(AFieldName).AsInteger := AFocusedNode.ParentValue;
end;
end;
end;
...
// Neuen Node erzeugen
TreeList.DataController.Insert;
Vielleich kommst du ja damit weiter.
Cu, Frank