Shadowman Geschrieben 25. Mai 2016 Geschrieben 25. Mai 2016 Hallo zusammen, gibt es eine Möglichkeit ein komplettes Formular mit Methoden als "Template" zu verwenden und in einem übergeordneten Formular anzeigen zu lassen? Ich schreibe gerade eine Anwendung und möchte nicht auf eigene Fenster ausweichen (zum Teil auch aus Unwissenheit, wie ich die Kommunikation vom Kindformularen zum Elternformular regle), bei der ich ziemlich viele unterschiedliche Darstellungsformen in einem Formular vereinen möchte. Man wählt also einen Menüpunkt aus und der gesamte Inhalt der Anwendung verändert sich entsprechend dem Menüpunkt. Alles blank in ein Formular zu schreiben macht das ganze extrem unübersichtlich (ich rechne hier mit bis zu 200 Controlls, weswegen ich versuche irgendwie die Übersichtlichkeit zu verbessern. Falls Ihr andere Vorschläge habt, immer her damit Mfg Shadowman Zitieren
Guybrush Threepwood Geschrieben 25. Mai 2016 Geschrieben 25. Mai 2016 Ja indem du kein neues Fenster erstellst, sondern ein UserControl Zitieren
Shadowman Geschrieben 25. Mai 2016 Autor Geschrieben 25. Mai 2016 Vielen Dank dafür!!! Ich habe jetzt alles aus meinem Form rausgenommen, dafür ein Panel erstellt und da lade ich dann die UserControls rein. Kann ich aus einem UserControl auf eine Variable aus dem Hauptformular zugreifen, oder muss ich das per public var lösen, welche ich dann aus dem Hauptform befülle? Zitieren
Guybrush Threepwood Geschrieben 25. Mai 2016 Geschrieben 25. Mai 2016 Am Besten wäre es wenn du dir mal mal das Modell-View-Control Pattern (MVC) anschaust. Dabei geht es nämlich genau darum wie man seine Oberfläche von seiner Programmlogik sinnvoll trennt. Zitieren
SilentDemise Geschrieben 25. Mai 2016 Geschrieben 25. Mai 2016 ist zwar auch richtig, MVC in WinForms ist aber halt auch die Pest, weil es eben nicht im Hinblick darauf designed wurde. Public vars sind allerdings auch böse. Ich würde hier mit Events arbeiten. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.