Windows Form mit beinhaltenden Controls speichern



  • Hallo zusammen 🙂

    Ich bin auf der Suche, auf irgendeine Weise eine zu Laufzeit erstellte Form mit allen seinen Controls lokal abzuspeichern.

    Ich habe mit Hilfe von Codeproject (http://www.codeproject.com/Articles/60175/The-DesignSurface-Extended-Class-is-Back-Together/) einen eigenen Designer in mein Programm integriert.
    Nun hat der Benutzer die Möglichkeit, sich selber mit dem von mir zur VerfĂŒgung gestellten Designer und einigen Controls, ein "widget" zu erstellen.

    Das funktioniert soweit auch alles bereits,
    nun hÀtte ich gerne eine Möglichkeit, das was sich da zusammenklicken lÀsst in irgendeiner Form zu speichern :-s
    und wieder zu laden 🙄

    Dabei ist mir eigentlich vollkommen egal, in welchem Format dieses Abbild dann aufliegt.

    Zu meinen bisherigen Versuchen:
    Zuerst dachte ich, es gibt eine einfache Möglichkeit, das Ganze als eigene Form zu speichern (wie eben der Designer im VisualStudio) und als .h/.cpp file abzulegen.
    Leider habe ich keine Möglichkeit gefunden, das zu realisieren
    (bzw. speichern könnte ich das Ganze ziemlich umstÀndlich indem ich einfach alle Controls in der Collection der Form durchgehe und daraus Code generiere... doch wie lade ich das Ganze dann wieder?
    Über einen FileReader als String auslesen und daraus etwas basteln? o.O)

    Dann bin ich auf die Möglichkeit zur XML Serialisierung gestoßen đŸ•¶

    Doch als ich damit ein wenig gespielt habe, hatte ich Probleme damit, die StandardControls (Label, Button, TextBox, etc... ) zu serialisieren... ganz zu schweigen von einer kompletten Form (und auch wieder, hab ich keinen Ansatz, wie ich das Ganze beim Laden wieder zusammenbauen soll 😕 )

    Also,
    ich wollte eben hier fragen,
    ob jemand eine Möglichkeit kennt? Eventuell sogar eine einfachere als mir alles im Moment so einfÀllt?

    Wie macht der VS-Designer das?
    Kann ich das eventuell auch verwenden? o.O

    Ich hoffe sehr, auf eure Mithilfe 🙂

    mfG
    - the incredible Leitman


Log in to reply