Hallo,
Zitat von
Jürgen Thomas:
Raffo32 hat primär gefragt, ob Du eigene Komponenten erstellen willst, nämlich in der Art, wie es in dem Link am Ende beschrieben wird.
Da ich eine visuelle Komponente erstellen will, natürlich.
Zitat von
Jürgen Thomas:
Welche
Vorfahren verwendet werden und welche
Methoden überschrieben werden sollten, hängt natürlich von
Deinen Vorstellungen und Wünschen ab. Dafür gelten die gleichen Regeln wie bei Delphi für
Win32:
- Wähle als Vorlage in der bisherigen Komponenten-Hierarchie eine Komponente, die möglichst viele Deiner Eigenschaften und Methoden bereits berücksichtigt.
- Ändere nur das, was unbedingt zusätzlich benötigt wird.
Ok, dann will ich mal ausfühlricher werden: Ich möchte eine Komponente von
Win32 nach .Net portieren. Die Originalkomponente ist von TCustomControl abgeleitet. In .Net habe ich Windows.Forms.Control genommen. Ist das der richtige Vorfahr?
Zu "welche Methoden ich überschreiben muss": Wenn ich weiß, welche Methoden es gibt, und was diese machen, dann weiß ich auch, welche ich überschreiben muss. Leider fehlt mir hier eine Übersicht.
Zitat von
Jürgen Thomas:
Alternativ gibt es noch die Variante User Control, bei der vorhandene Controls kombiniert, mit neuer Funktionalität versehen und wie ein neues (eigenes) Control verwendet werden.
Das will ich nicht.
Zitat von
Jürgen Thomas:
Ein Tutorial kenne ich nicht. Ich habe mich orientiert an: Doberenz/Gewinnus: Borland Delphi 2005 für NET, Hanser-Verlag, ISBN 3-446-40202-0, Seite 717 ff.
Habe ich mir auch durchgelesen. Leider ist dieses Kapitel das Papier nicht wert, auf dem es gedruckt ist (Vielleicht ist das für Anfänger interessant, aber wenn ich mir das Beispiel ansehe: Ein Timer und eine Methode, die Visible umschaltet
). Welche Methoden bietet mir denn Windows.Forms.Control, die ich überschrieben/anpassen kann? In der
VCL kann man ja schön im QT nachsehen, aber bei .Net könnte ich nur mit Reflection arbeiten. Für die Entwicklung irgendwie nicht so toll.
Zitat von
Jürgen Thomas:
Ich schlage vor, Du versuchst erst einmal, mit diesen Hinweisen weiterzukommen, und danach sagst Du genauer, was für eine Komponente Du erstellen willst mit welchen Eigenschaften und Methoden.
Ich kann Dir genau sagen, welche
Komponente ich erstellen (portieren) will.
P.S. Falls es so rüber gekommen sein sollte, dass ich gerade anfangen will, Komponenten zu entwickeln, und mir die Grundlagen fehlen: Nein, ich will mein Wissen nur auf WinForms ausdehnen.
Gruß
xaromz