mise en page | titre | lien permanent | description | date | balises |
---|---|---|---|---|---|
poste | Lisez-moi MvvmForms | nouvelle-page.html | Lisez-moi pour les formulaires Mvvm | 2015-05-17 16:31:30 -0700 | MVVM ; Formulaires Windows |
Bienvenue dans le projet de bibliothèque MvvmForms d'ActiveDevelop. L'objectif de MvvmForm est de fournir une prise en charge compatible XAML ViewModel pour les projets et solutions Windows Forms Visual Basic et CSharp, y compris une prise en charge complète de WinForms Designer. MvvmForms est Open Source (GPL), mais double licence. Pour plus d'informations sur les licences MvvmForms, lisez la section Licence ci-dessous.
Si vous avez le luxe d'un bon départ pour votre nouveau projet et que votre équipe de développement est à la hauteur, vous n'avez probablement pas besoin de MvvmForms. Mais ce n’est pas si souvent le cas. Dans la plupart des scénarios, des centaines de millions de lignes de code ont été écrites pour la plate-forme Windows entre 1996 et 2010, et souvent dans CSharp et Visual Basic .NET pour Windows Forms, ou même avec Visual Basic 6. De nombreuses entreprises ne le font pas. avoir les moyens de jeter ces projets et de repartir de zéro. Et d’ailleurs, pour quoi faire ? Votre solution fonctionne, elle est stable et testée. Alors pourquoi ne pas continuer à l’utiliser ?
MvvmForms est fait pour vous si vous souhaitez changer votre paradigme de développement. Si vous souhaitez vous débarrasser de Code Behind et introduire une bonne architecture avec séparation des préoccupations. Si vous souhaitez construire sur la base d'une architecture qui permet les tests unitaires. Si vous souhaitez créer une architecture multiniveau à partir de votre logiciel existant simplement en le refactorisant partie par partie, vous pouvez réutiliser de grandes parties du logiciel pour différentes interfaces utilisateur, comme pour les applications universelles Windows, les applications iOS ou les applications Android.
Notre société, située en Westphalie en Allemagne, s'est spécialisée dans la migration d'un paradigme typique de Windows Forms Code Behind vers une architecture moderne. Et nous aidons à le faire de manière réalisable. Nous le savons, votre équipe n'a ni le temps ni le budget pour repartir de zéro, et c'est la raison pour laquelle nous avons développé MvvmForms : Pour aider nos clients à entrer dans le nouveau monde du développement logiciel sans mettre en péril le projet.
MvvmForms est une collection de contrôles pour Windows Forms. À l'origine, il a été conçu pour accélérer le processus de développement de formulaires gourmands en données et pour répondre au besoin de backends de bases de données avec leurs scénarios typiques tels que la gestion sans effort des DBNulls, la gestion des formulaires à l'état sale, la mise en évidence du focus, le traitement des des formules dans les champs de saisie de données numériques, des fenêtres contextuelles de recherche multithread/multi-colonnes pour des collections allant jusqu'à 100 000 éléments, et bien plus encore. Au milieu de l'année 2012, quelques entreprises allemandes nous ont contactés pour trouver un moyen de conserver leur conception Windows Forms existante. Elles souhaitaient pourtant pouvoir appliquer le modèle Mvvm à certaines parties de leurs applications LOB, afin de pouvoir réutiliser ce code dans applications mobiles et à d’autres fins. Ce fut le début de MvvmForms, et nous l'avons développé à partir de l'ensemble d'outils existant. Cela a fonctionné exceptionnellement bien, nous avons donc poursuivi cette approche et ajouté de riches fonctionnalités de conception pour les composants Mvvm.
En raison de cet historique, MvvmForms répond en fait à deux exigences Windows Forms. La première consiste à simplifier la conception de formulaires riches en données en fournissant des contrôles tels que NullableDateValue, NullableNumValue, NullableTextValue, des contrôles pour la gestion de DirtyState dans les formulaires, etc.
La seconde consiste à activer Windows Forms pour Mvvm. Pour en finir, vous n'avez pas besoin d'utiliser l'un des contrôles fournis par MvvmForms, vous avez juste besoin d'un seul composant : le composant MvvmManager. Fondamentalement, faites simplement glisser ce composant dans votre formulaire, définissez sa propriété DataContextType sur le type du ViewModel que vous souhaitez lier, et chaque contrôle de ce formulaire obtiendra une propriété PropertyBindings qui vous permettra de vous lier à la propriété ViewModel correspondante. Il vous suffit de définir la propriété DataContext du composant MvvmManager au moment de l'exécution. Vous trouverez un petit guide étape par étape pour commencer, lisez le wiki – les liens se trouvent ici sur le côté droit.
En plus : jetez un oeil à cette vidéo d'introduction sur youtube, qui donne non seulement une introduction à MvvmForms, mais aussi à MVVM en général.
https://www.youtube.com/watch?v=1R_81Np5New
Oh oui! Notre équipe chez ActiveDevelop s'occupe quotidiennement de MvvmForms, car quelques grands projets en Allemagne s'appuient sur MvvmForms - certains dépassant 1 million de lignes de code. Puisque nous sommes une entreprise allemande et que nous avons commencé à localiser MvvmForms en anglais, il y a encore beaucoup de commentaires allemands et de balises XML-Docu-Tags dans la source - mais nous y travaillons. Mais MvvmForms est prêt à être utilisé, il est stable, fiable, minutieusement testé, et si vous avez besoin d'une assistance spéciale ou si vous souhaitez commencer de toute urgence et que vous avez besoin de nous pour personnaliser, localiser ou étendre ses fonctionnalités, n'hésitez pas à nous contacter, alors nous pouvons trouver un moyen d'y parvenir.
Oui, sans aucune limitation. Un tiers de nos projets actuels sont dans CSharp, le reste est en VB et des parties de MvvmForms (la bibliothèque de base Mvvm par exemple) sont également dans CSharp. Les autres parties sont en VB. Donc, tant que vous utilisez Windows Forms, vous êtes prêt à partir : la langue n'a pas d'importance,
Oui, pour les projets open source. Pour les projets propriétaires et commerciaux, ce n'est pas entièrement gratuit, mais aussi presque aussi gratuit. Notre objectif principal est de trouver de nouvelles opportunités pour nous aider grâce à notre expertise de plus de 25 ans dans la conception d'applications LOB, et surtout de montrer à nos clients un moyen de migrer leur logiciel d'un gros logiciel Win32 monolithique vers une approche moderne sans risque, où ils peuvent aller de l'avant avec le cloud computing, Windows 10, les applications mobiles et tout cela sans tout refaire à partir de zéro.
Donc, si vous souhaitez que nous vous aidions avec votre application existante en organisant des ateliers, en vous aidant à concevoir une nouvelle architecture, en trouvant un concept de migration réalisable, en présentant Scrum à votre équipe ou en fournissant des ressources humaines pour une période de temps limitée dans le but de Dans le processus de modernisation, nous apportons MvvmForms avec nous. Alors c'est gratuit pour vous, car vous êtes notre client. Allez-y et utilisez-le : vous disposez d’une licence implicite pour toute utilisation commerciale, si vous êtes ou avez été notre client à un moment donné. Cependant, si vous ne voulez pas de nous, mais que vous voulez l'ensemble d'outils, parlez-nous simplement et nous trouverons le meilleur modèle de support pour vous : [email protected].
Si vous maintenez un projet open source sous GPL et que vous souhaitez l'utiliser. Allez-y : créez-le, modifiez-le, modifiez-le et vendez-le avec votre application Open Source. C'est Open Source ! Tant que votre application qui y est liée ou utilise des classes dérivées de MvvmForms est également GPL - c'est parfaitement OK. Mais, si vous gérez une solution propriétaire et proche et que vous souhaitez utiliser (lien vers, dériver de) MvvmForms, vous devez obtenir une licence par développeur actif.
Oui. Créez simplement des demandes de tirage.