so langsam kreig ich die Kretze... was ist hier Falsch:
Delphi-Quellcode:
type
User = class(System.Windows.Forms.Form)
procedure nextrecord(sender: System.Object; e: System.EventArgs);
{$REGION 'Vom Designer verwalteter Code'}
strict private
Die eigentliche Procedure ist unterhalb des konstruktors und beinhaltet einen
DB-Zugriff.
2 Punkte die mich richtig auf die Palme bringen:
1. ich kann auf ein im WinForm initialisiertes Objekt (Datagrid) nicht über self oder andere möglichkeit zugreifen um die Datasource festzulegen
2. ich kann die procedure nicht mit beliebigen Parametern erweitern, weil ich sonst im
Delphi-Quellcode:
procedure User.User_Load(sender: System.Object; e: System.EventArgs);
begin
ds := dataset.Create;
ds2 := dataset.Create;
get_dataset(ds, 'Select * from tbl_sysuser', da, conn, 'User');
datagrid1.DataSource := ds.Tables.Item['User'];
include(self.BindingContext[ds,'User'].PositionChanged, NextRecord);
nextrecord(nil, nil);
end;
eine weitere Fehlermeldung bekomme...
hier noch die eigentliche procedure:
Delphi-Quellcode:
procedure nextrecord(sender: System.Object; e: System.EventArgs);
var pos: integer;
row: datarow;
connStr: System.string;
val: sqlparameter;
begin
pos := user.ActiveForm.Controls.Item[0].BindingContext[ds, 'User'].Position;
// .datagrid1.BindingContext[ds,'User'].Position;
row := ds.Tables['User'].Rows[pos];
if row.Item[0].ToString <> '' then
begin
get_dataset(ds2,'Select * from tbl_sysusermember where fld_user =' + row.Item[0].ToString,da2,conn, 'Member');
end;
end;
ein Tribut an die Uhrzeit
Sven