IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++/CLI Discussion :

[C++/CLI] Comment s�rialiser un winform et ses controles


Sujet :

C++/CLI

  1. #1
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Par d�faut [C++/CLI] Comment s�rialiser un winform et ses controles
    Mon application ouvre dans une fen�tre secondaire un winform qui contient diff�rents controls. Cette fen�tre secondaire est uniquement affich�e et anim�e (modification des attribut des controls). Les controls sont identifi�s par leur "name" et acc�d� avec "GetNextControl" � travers un objet form g�n�rique. Ces winforms ne contiennent que 2 types de controls, des labels et des pictureBox.
    Donc j'ai une cinquantaine de petits winforms que j'affiche chacun leur tour et que je manipule sans soucis.

    Maintenant, au lieu de devoir modifier les winforms avec l'�diteur de ressource de VS, et de devoir recompiler le projet � chaque modif, je voudrais sauvegarder mes petits winforms dans des fichiers lisibles (1 par winform si possible). Un peut � la mani�re des anciens fichiers ressources RC. Comme �a, si quelqu'un veut d�placer un control de 2 pixels il �dite le fichier avec notpad, relance l'appli, et hop.

    J'ai pens� � chercher du cot� de la s�rialisation, car un petit fichier xml pour chaque winform me conviendrai bien. Mais visiblement les winforms et les controls ne se s�rialize pas si facilement.

    Quelqu'un aurrait il une id�e, ou une autre piste pour un r�sultat voisin ?
    Si je pouvais �viter de r�-inventer la roue et me cr�er un format de fichier sp�cifique, ce serait pas mal.

    PS : j'utilise VC++ 2005, mais si quelqu'un r�pond en C#, j'adapterai...

  2. #2
    Membre Expert
    Avatar de Piotrek
    Homme Profil pro
    D�veloppeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Par d�faut
    Bonjour et bienvenue

    Il existe ceci:

    http://msdn.microsoft.com/msdnmag/issues/06/03/DesignerHosting/default.aspx
    (telecharge le sample, il devrait y avoir de la serialisation dedans)

    et cela:
    http://windowsforms.net/default.aspx?tabindex=6&tabid=47&ItemID=13&mid=142

    Tu devrais meme plus avoir besoin de notepad!

  3. #3
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Par d�faut
    Merci pour la r�ponse et le message de bienvenue. Rien que le 1er lien r�pond � ma question et m�me plus. L'editeur de winform fourni en exemple est un sacr� plus pour le projet sur lequel je d�veloppe.
    J'�tudie tous �a et je repasse dans quelques heures pour cocher la case "r�solu".

    PS : Mais comment j'ai fait pour developper pendant tant d'ann�es sans connaitre www.developpez.com merci Google ?

  4. #4
    Membre Expert
    Avatar de Piotrek
    Homme Profil pro
    D�veloppeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Par d�faut
    N'hesite pas a participer

    (et je me suis permis de quoter ton remerciement comme le veut la tradition)

  5. #5
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    17
    D�tails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Par d�faut
    Conclusion :
    Merci Piotrek, la question est "r�solue" et au cas ou cela servirait � quelqu'un, voici un lien vers la classe FormLoader (en C++) que je me suis fait :
    20060322_FormLoader.zip

    Cette classe permet d'instancier un form � partir d'un fichier XML comme dans l'exemple ci-dessous :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
        ArrayList   ^errorsList;
        FormLoader  ^form;
     
        form = gcnew FormLoader();
        form->LoadFormFromXml("myForm.xml", errorsList);
     
        if ( errorsList->Count )
        {
             // Afficher le détail des erreurs contenues dans errorsList
        }
        else
            form->Show();

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Comment lancer Eclipse en incluant ses plugins
    Par eclie dans le forum Eclipse Platform
    R�ponses: 8
    Dernier message: 19/02/2009, 08h45
  2. [TabControl] Comment obtenir la suppression de ses controles ?
    Par maladebe dans le forum Windows Forms
    R�ponses: 6
    Dernier message: 12/09/2008, 19h07
  3. R�ponses: 12
    Dernier message: 23/01/2008, 09h17
  4. Comment sauver un TTreeView et ses nodes data ?
    Par faimo dans le forum Composants VCL
    R�ponses: 6
    Dernier message: 19/04/2005, 13h48
  5. Comment copier un dossier et ses sous dossiers ?
    Par touhami dans le forum Langage
    R�ponses: 5
    Dernier message: 30/12/2004, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo