Benutzer mit den meisten Antworten
Problem bei Vererbung von Formen

Frage
-
Hallo zusammen,
ich habe gerade ein Problem mit der Vererbung von Formen: ich habe eine Masterform, die 4 Buttons enthält, die alle auf virtuelle Methoden verweisen. Ich habe mir anschließend eine Klasse erstellt, die von dieser Masterform erbt und die ein Listenfenster werden soll. Auf dieses Fenster habe ich nun ein Datagridview gezogen. Dabei entsteht in meinem Listenfenster die Methode "InitializeComponent". Diese Methode rufe ich im Load-Ereignis der Form auf. Trotzdem wird mir wenn ich das Programm laufen lasse, mein erbendes Fenster nicht angezeigt, sondern nur das Masterfenster.
Ich hoffe, Ihr könnt mir sagen, was ich falsch mache... Tausend Dank im voraus für Eure Hilfe!
Gruß
Marcus
Der erste Tag, an dem ich nichts Neues lerne, wird der Tag sein, an dem sich der Deckel über mir schließt...
Antworten
-
Hall Marcus,
InitializeComponent wird (muss) direkt im Konstruktor aufgerufen werden. Der Aufruf wird dort vom Designer automatisch eingefügt (wenn nicht, ist was schief gegangen).
Siehe auch: How does the Windows Forms designer in Visual Studio load a Form? (etwas veraltet, aber im Grunde noch gültig).
Im übrigen könnten virtuelle Methoden für Steuerelemente (Schaltflächen) Probleme bereiten. Sinnvoller wäre den Standard-Mechanismus zu verwenden, d. h. die Ereignisse der Schaltflächen zu nutzen.
Gruß Elmar
- Als Antwort markiert mjanz Donnerstag, 10. Juli 2014 08:09
Alle Antworten
-
Hall Marcus,
InitializeComponent wird (muss) direkt im Konstruktor aufgerufen werden. Der Aufruf wird dort vom Designer automatisch eingefügt (wenn nicht, ist was schief gegangen).
Siehe auch: How does the Windows Forms designer in Visual Studio load a Form? (etwas veraltet, aber im Grunde noch gültig).
Im übrigen könnten virtuelle Methoden für Steuerelemente (Schaltflächen) Probleme bereiten. Sinnvoller wäre den Standard-Mechanismus zu verwenden, d. h. die Ereignisse der Schaltflächen zu nutzen.
Gruß Elmar
- Als Antwort markiert mjanz Donnerstag, 10. Juli 2014 08:09
-
Hallo Elmar,
mann, manchmal sieht man den Wald vor lauter Bäumen nicht... Ich habe den Standardkonstruktor mit dem InitializeComponent eingefügt, jetzt läuft's wie geschnitten Börek... Danke dafür! Die 4 Methoden sind die Ereignisse der Buttons. Sie sind virtuell, damit ich Sie entsprechend erweitern kann, wenn ich ein erbendes Fenster aufrufe. Kann das wirklich zu Problemen führen?
Tausend Dank für Deine Hilfe!
Der erste Tag, an dem ich nichts Neues lerne, wird der Tag sein, an dem sich der Deckel über mir schließt...