Datenaustausch zwischen >5 WinForms

MarcJ

Grünschnabel
Hi,

bezogen auf das Tutorial "C# - Datenaustausch zwischen Formularen" stellt sich mir die Frage wie ich das Problem angehen kann ,wenn es zBsp: ein MDiParent Form gibt und dort wie gebräuchlich über ein Menu weitere Forms geöffnet werden.
Dann würde ich normalerweise so vorgehen wie im Tutorial. Wie wird aber das ganze gehandelt,wenn nach einem Menüpunkt nochmal ein UnterMenüForm geöffnet werden kann. Das ganze wird dann ziemlich umständlich.

Code:
MDIParent (Basis)  ------------------------------------->MenüForm1----------------------------->UnterMenüForm1
                                                       |
                                                       |____________>MenüForm2----------------------------->UnterMenüForm2

Vor allem wenn man zBsp: von UnterMenüForm1 mit UnterMenüForm2 kommunzieren möchte. Gibt es da keine einfachere Möglichkeit,eventuell eine statische Klasse in der eine Verwaltung der Forms stattfindet,oder lieg ich da völlig falsch?

Gruß
Marc
 
Hi

Der einfachste Weg:
Jede Form gibt die Daten an ihre Children weiter. Du kannst hier also ein Klasse von Form ableiten, in der du schon die entsprechende Logik implementierst. Alle Dialoge erben dann eben von dieser Klasse und nicht von System.Windows.Forms.Form.
So hast du auch die Möglichkeit den Baum noch weiter aufzuspannen
 
Ist MDI auch das was du wirklich willst?

Microsoft ist von MDI schon seit Jahren abgegangen, was auch wir Entwickler tun sollten. Daher würde ich die Frage, ob denn nun MDI in deinem Fall notwendig ist, zuvor klären.

Wenn dies für dich notwendig ist, dann würde ich dir den Lösungsansatz von Nico nahe legen.
 
Zurück