Fondamentalement, mon projet est une application MDI Winform où un utilisateur peut personnaliser l'interface en ajoutant divers contrôles et en modifiant la disposition. Je voudrais pouvoir enregistrer l'état de l'application pour chaque utilisateur.Sérialisation des Winforms MDI pour la persistance
Je l'ai fait un peu de recherche et a trouvé ceux-ci:
How to auto save and auto load all properties in winforms C#?
Save WinForm or Controls to File
Au fond de ce que je comprends, la meilleure approche est de sérialiser les données au format XML, cependant les contrôles WinForm ne sont pas sérialisables, donc j'aurais besoin d'utiliser des classes de substitution:
http://www.codeproject.com/KB/dotnet/Surrogate_Serialization.aspx
Maintenant, dois-je écrire une classe de substitution pour chacun de mes contrôles? J'aurais besoin d'écrire une sorte d'algorithme récursif pour sauvegarder tous mes contrôles, quelle est la meilleure approche pour y parvenir? Comment puis-je restaurer toutes les fenêtres, devrais-je utiliser le motif de conception memento pour cela? Si je veux implémenter plusieurs utilisateurs plus tard, dois-je utiliser Nhibernate pour stocker toutes les données d'objet dans une base de données? J'essaie toujours de comprendre le problème et si quelqu'un a une expérience ou un conseil, j'apprécierais grandement, merci
La forme et les contrôles fonctionnent, j'essaie juste de le rendre persistant. – Serge
Il y a aussi l'option de paramétrage de formulaire, mais il a été prouvé qu'il n'est pas assez robuste pour les contrôles que j'utilise. – Serge