En regardant les modèles de projet C# dans VS2008 et les offres sont la bibliothèque de contrôle utilisateur WPF, la bibliothèque de contrôle personnalisé WPF et la bibliothèque de contrôle Windows Forms. Lequel utiliseriez-vous si vous vouliez déplacer un contrôle actif hérité écrit en C++ dans le monde C# et .NET?Quel type de projet C# utiliseriez-vous pour redévelopper un contrôle MFC C++ ActiveX?
Répondre
On dirait que vous essayez de faire plusieurs choses différentes à la fois:
- Migrer votre code pour la construction d'une nouvelle version de Visual Studio.
- Migrez votre utilisation de la technologie vers une technologie plus récente (ActiveX vers .net)
- Migrez votre langage (C++ vers C#).
Si vous avez une petite base de code, vous devez probablement commencer à partir de zéro et utiliser la fonctionnalité de port dans la nouvelle base de code si nécessaire.
Pour une plus grande base de code que vous devez réaliser que cela est une tâche coûteuse à la fois dans l'effort et le taux de défaut.
Un ordre pourrait être:
- importer votre code dans la nouvelle version de Visual Studio. Obtenez-le compiler. Passez en revue les paramètres du projet pour chaque projet.
- Refactorisez votre code pour isoler autant que possible le code mfc et activex. Suivez de bonnes pratiques de refactoring, surtout si vous n'avez pas beaucoup de tests unitaires avant de commencer.
- Envisagez de remplacer votre couche ActiveX par .net.
- Tenez compte de la boîte à outils GUI la mieux adaptée au remplacement de MFC.
- Langage - envisagez de passer d'abord au format C++ géré.
- Envisagez de passer de C++ géré à C#.
Plus important encore, être en mesure de justifier de faire tout ce qui précède!
Il n'y a pas de modèle de projet qui le fera pour vous. Vous pourriez aussi bien lire et commencer avec un usercontrol.
Vous devez considérer l'application cible qui hébergera le contrôle. S'il s'agit d'une application métier, j'ai le heard que WPF n'offre pas de grands avantages sur Forms. Selon l'entrée de blog this cependant, l'auteur estime que le WPF tueur est une application métier qui exploite la puissance graphique offerte par WPF pour la visualisation de données.
En fin de compte, je suppose que c'est une analyse coûts/avantages. Suivez-vous la voie WPF et payez le coût de la courbe d'apprentissage pour le bénéfice futur de la visualisation graphique des données ou vous en tenez à la méthode éprouvée et risquez de développer une application obsolète.
- 1. écrire un contrôle com en C# et l'utiliser dans MFC
- 2. Comment puis-je accéder à un contrôle ActiveX dans MFC?
- 3. C# RDP ActiveX Contrôle perdre le focus
- 4. Gestion de l'événement de contrôle ActiveX en C#
- 5. Win32: Entrées de registre requises pour enregistrer un contrôle ActiveX?
- 6. Structure de dossier pour un projet C
- 7. Comment convertir un projet ActiveX (hébergé par webbrower) en projet de bibliothèque statique?
- 8. Quel est le type de données C# pour WINOLEAPI?
- 9. C# ActiveX exe?
- 10. Comment préparer un contrôle ActiveX pour livraison sur le Web
- 11. Quel type de projet de test Silverlight MVVM?
- 12. Comment déployer un contrôle ActiveX pour ie à partir d'un projet VS2008?
- 13. Quel modèle de projet dois-je utiliser pour le projet de développement de jeux Visual C++?
- 14. Chargement du formulaire C# dans le contrôle ActiveX
- 15. une bonne méthode pour insérer un contrôle tout comme Excel dans le programme MFC/C++?
- 16. Utilisation de l'objet activeX sur des applications non-MFC
- 17. Est-ce vraiment un contrôle ActiveX?
- 18. Conversion d'un projet de C++ en C#
- 19. Outil pour les capacités de contrôle ActiveX
- 20. C#: essayer un projet simple
- 21. Transmission de données entre l'application C++ (MFC) et C#
- 22. Type de projet C# non présent dans Visual Studio 2005
- 23. Vues interchangeables multiples (MFC/C++)
- 24. Ajouter un contrôle ActiveX à un JPanel
- 25. C# - quel type de collection est recommandé pour un modèle auto-référentiel many-to-many?
- 26. Détection de code mort dans un projet C/C++ existant
- 27. Programtically Rechargement un projet C#
- 28. Comment ajouter un composant ActiveX à mon projet dans Visual C++ 2008
- 29. Programme MFC utilisant Visual C++
- 30. Comment mettre à jour les contrôles ActiveX dans un projet C# dans Visual Studio 2005