Fehlende Referenzen in MDI Anwendung


napstermania

Mitglied
Hallo zusammen,

ich hänge derzeit an einem Problem, bei dem ich auch im Netz nicht viele Lösungsansätze finde.

Ich benutze eine C# MDI Anwendung in der ich mehrere childs öffne. Dazu habe ich eine eigene Form abgeleitet und ruf diese in meinem parent auf.

Bsp.

Code:
myForm f = new myForm();
f.MdiParent=this;
f.Show();

In dieser child form wird wegen Aktualisierungen im Parent wieder auf dieses gecastet.

z.B.
Code:
((FormParent)MdiParent).menuItem1.Enabled = Enabled;

Das funktioniert auch alles soweit, nur wenn ich jetzt das child über das (x) in der Titelleiste schliesse und im Parent erneut öffne, welches wie am Anfang mit (new myForm) erzeugt wird hab ich keine referenz mehr auf mein "MdiParent". Es is einfach "null" - > folglich schlägt der Aufruf an mein menuitem fehl. Ich arbeite mit einem Dispose-Pattern, welches auch dafür sorgen sollte das alle Verweise beim schliesen des childs entsorgt sind. Trozdem habe ich keine Ahnung warum beim erneuten erstellen keine referenz vorhanden ist. Was kann der Grund dafür sein?

Ich bin mit Mdi Anwendungen leider noch nicht so vertraut. Vielleicht ist das casten auch völliger Schwachsinn :) aber wie es immer so ist, wenn man unter Zeitdruck steht, man nimmt dann das was funktioniert (!)
Wenn es irgendwelche guten Konzepte lösungen ooder ähnliches dazu gibt, ich bin für alles offen und dankbar.

Ich nutz VS 2008 (Framework 3.5)

Mfg
 
Zuletzt bearbeitet: