Autor Beitrag
chubbson
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 32
Erhaltene Danke: 1



BeitragVerfasst: Do 17.09.09 10:08 
Hallo Miteinander

Ich habe eine ganz banale Frage...
Im Moment darf ich wieder ne c# app schreiben, seit langem. Eigentlich bin ich eher mit Delphi unterwegs.

Wenn ich ne Klasse erstelle.. werden diese ja in c# glaub ich von CObject (ähnlich wie Delphi TObject) abgeleitet.
Stellen diese Klassen irgend eine art Afterconstruction funktion zur verfügung die ich überschreiben kann?
Wie sie in Delphi vorhanden ist.

Vielen Dank für die Aufklärung
Grüsse Chubbson
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 17.09.09 11:29 
Hallo,

die Frage ist vielleicht banal, die Antwort ganz und gar nicht.

In C# (genauer: in NET) heißt die Basisklasse Object (ohne Präfix, siehe NET Richtlinien für Namen). Diese Klasse bietet nur minimale Inhalte und nichts, wie du es suchst. Besser ist es, in der Klassenhierarchie so weit zu gehen wie möglich und eine möglichst passende Klasse als Basisklasse zu verwenden.

Beispiel: Ein eigenes Formular wird von Form abgeleitet und nicht von Control. Dann hast du auch das Load-Ereignis, das es in Control nicht gibt. (Das entspricht von der Funktionalität her am ehesten dem AfterConstruction.)

Bei einer Klasse, die von Component abgeleitet ist, kann man einiges in den Konstruktor hinter "InitializeComponents" setzen. Vielleicht kannst du per Reflector untersuchen, wie es in Control gemacht wird.

Jürgen