All Projects → KlausLoeffelmann → Mvvmforms

KlausLoeffelmann / Mvvmforms

Licence: gpl-2.0
Repository for MvvmForms

Programming Languages

csharp
926 projects

Projects that are alternatives of or similar to Mvvmforms

Wanandroid
🏄 基于Architecture Components dependencies (Lifecycles,LiveData,ViewModel,Room)构建的WanAndroid开源项目。 你值得拥有的MVVM快速开发框架:https://github.com/jenly1314/MVVMFrame
Stars: ✭ 410 (+2057.89%)
Mutual labels:  mvvm, viewmodel
Peopleinspace
Minimal Kotlin Multiplatform project using Jetpack Compose and SwiftUI
Stars: ✭ 887 (+4568.42%)
Mutual labels:  mvvm, viewmodel
Mvvmarms
Android MVVM Architecture Components based on MVPArms and Android Architecture Components.
Stars: ✭ 425 (+2136.84%)
Mutual labels:  mvvm, viewmodel
Mvvmsmart
基于谷歌最新AAC架构,MVVM设计模式的一套快速开发库,整合ViewModel+Lifecycles+Navigation+DataBinding+LiveData+Okhttp+Retrofit+RxJava+Glide等主流模块,满足日常开发需求。使用该框架可以快速开发高质量、易维护的Android应用。 项目组会持续维护,请放心使用.欢迎Start并Fork交流.
Stars: ✭ 382 (+1910.53%)
Mutual labels:  mvvm, viewmodel
Reactiveui
An advanced, composable, functional reactive model-view-viewmodel framework for all .NET platforms that is inspired by functional reactive programming. ReactiveUI allows you to abstract mutable state away from your user interfaces, express the idea around a feature in one readable place and improve the testability of your application.
Stars: ✭ 6,709 (+35210.53%)
Mutual labels:  mvvm, winforms
Rxviewmodel
ReactiveViewModel-esque using RxSwift
Stars: ✭ 392 (+1963.16%)
Mutual labels:  mvvm, viewmodel
Windowscommunitytoolkit
The Windows Community Toolkit is a collection of helpers, extensions, and custom controls. It simplifies and demonstrates common developer tasks building UWP and .NET apps for Windows 10. The toolkit is part of the .NET Foundation.
Stars: ✭ 4,654 (+24394.74%)
Mutual labels:  mvvm, winforms
Jetpack github
基于Kotlin + Jetpack全家桶 + Coroutines(协程) + Flutter等架构实现的一款精简版Github客户端项目,望与广大小伙伴一起成长,欢迎start or fork!
Stars: ✭ 314 (+1552.63%)
Mutual labels:  mvvm, viewmodel
Reactive Mvvm Android
My way to MVVM using KotlinX Coroutines and Android data-binding
Stars: ✭ 626 (+3194.74%)
Mutual labels:  mvvm, viewmodel
Theatre
Pet project using Clean Architecture + MVVM + Reactive Extensions + Android Architecture Components. The data are fetched from LondonTheatreDirect API. 🎭
Stars: ✭ 577 (+2936.84%)
Mutual labels:  mvvm, viewmodel
Jetpack Wanandroid
Kotlin+Jetpack+Coroutines+Retrofit+koin 完成的MVVM 组件化客户端 🔥🔥
Stars: ✭ 353 (+1757.89%)
Mutual labels:  mvvm, viewmodel
Ios Clean Architecture Mvvm
Template iOS app using Clean Architecture and MVVM. Includes DIContainer, FlowCoordinator, DTO, Response Caching and one of the views in SwiftUI
Stars: ✭ 753 (+3863.16%)
Mutual labels:  mvvm, viewmodel
Android Jetpack Demo
🔥 快速入门Android Jetpack以及相关Kotlin、RxJava、MVVM等主流技术,独立构架App的基础技能
Stars: ✭ 335 (+1663.16%)
Mutual labels:  mvvm, viewmodel
Lpdmvvmkit
LPDMvvmKit - Elegant MVVM framework in Objective-C.
Stars: ✭ 400 (+2005.26%)
Mutual labels:  mvvm, viewmodel
Moko Mvvm
Model-View-ViewModel architecture components for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 329 (+1631.58%)
Mutual labels:  mvvm, viewmodel
Weatherapp
5 Day Forecast app that works on Android and uses latest tools (Kotlin, Navigation, Room, LiveData, Databinding, Dagger 2)
Stars: ✭ 426 (+2142.11%)
Mutual labels:  mvvm, viewmodel
Kotlinjetpackinaction
🔥🔥 Kotlin Jetpack zero to hero. 新手到高手
Stars: ✭ 264 (+1289.47%)
Mutual labels:  mvvm, viewmodel
Android Viewmodelbinding
A lightweight library aiming to speed up Android app development by leveraging the new Android Data Binding together with the Model-View-ViewModel design pattern.
Stars: ✭ 308 (+1521.05%)
Mutual labels:  mvvm, viewmodel
Mvvm Sample App
MVVM, ViewModel and LiveData Sample App
Stars: ✭ 498 (+2521.05%)
Mutual labels:  mvvm, viewmodel
T Mvvm
This repository contains a detailed sample app that implements MVVM architecture using LiveData,ViewModel,Retrofit,Rxjava
Stars: ✭ 630 (+3215.79%)
Mutual labels:  mvvm, viewmodel

layout: post title: MvvmForms Readme permalink: new-page.html description: Readme for Mvvm Forms date: 2015-05-17 16:31:30 -07:00 tags: "MVVM; Windows Forms"

MvvmForms ReadMeFirst!

Welcome to ActiveDevelop's MvvmForms Library Project. MvvmForm's purpose is to provide XAML ViewModel compatible support for Windows Forms Visual Basic and CSharp Projects and Solutions including a full-blown WinForms Designer support. MvvmForms is Open Source (GPL), but Dual License. For more Information about MvvmForms licensing read the License section below.

Why Mvvm for WinForms? Does it make sense? Why not using WPF/XAML to begin with?

If you have the luxury of a clean start for your new project, and your development team is up to the task, you most probable do not need MvvmForms. But that is not that often the case. In most scenarios hundreds of millions of lines of code have been written for the Windows platform during the time between 1996 and 2010, and often in CSharp and Visual Basic .NET for Windows Forms, or even with Visual Basic 6. Many companies don't have the means of throwing those projects away and start from scratch. And what for, anyway? Your solution works, it is stable and tested. So, why not continue using it?

MvvmForms is for you if you want to change your development paradigm. If you want to get rid of Code Behind and introduce a good architecture with separation of concerns. If you want to build based on an architecture which allows unit testing. If you want to create an multi-tier architecture from your existing software simply by refactoring part by part, where you can reuse big parts of the software for different UIs like for Windows Universal Apps, iOS Apps or Android Apps.

Our company, located in Westphalia Germany, has specialized in migrating from a typical Windows Forms Code Behind paradigm to a modern architecture. And we help to do this in a feasible way. We know, your team does neither have the time nor the budget to start from scratch, and that is the reason we developed MvvmForms: To help our customers to enter the new world of software development without jeopardizing the project.

How does it work?

MvvmForms is a collection of controls for Windows Forms. Originally, it was designed to speed up the development process for data-heavy forms, and to address the need for database backends with their typical scenarios like zero-effort-handling of DBNulls, dirty-state handling of forms, focus highlighting, processing of formulas in numeric data entry fields, multi-threaded/multi-column lookup popups for collections up to 100.000 items, and much more. Sometime in mid-2012, a couple of German companies approached us to find a way to keep their existing Windows Forms design, yet they wanted to be able to apply the Mvvm pattern for parts of their LOB applications, so they could reuse this code in mobile apps and for other purposes. That was the start for MvvmForms, and we developed it from the existing toolset. This worked exceptional well, so we continued this approach and added rich designer functionality for the Mvvm components.

Because of this history, MvvmForms actually addresses two Windows Forms requirements. The first is to simplify designing data-heavy forms by providing controls like NullableDateValue, NullableNumValue, NullableTextValue, controls for DirtyState handling in Forms and so on.

The second one is to enable a Windows Forms for Mvvm. For this to end, you do not need to use one of the controls MvvmForms provide, you just need one component: the MvvmManager component. Basically, just drag that component into your form, set its DataContextType property to the type of the ViewModel, you want to bind, and every control on that form will get a PropertyBindings property which allow you to bind against the corresponding ViewModel property. You just need to set the DataContext property of the MvvmManager Component at runtime. You'll find a short step-by-step guide for getting started, read the wiki - the links is here on the right side.

On top: take a look at this introduction video on youtube, which does not only give an introduction to MvvmForms, but also to MVVM in general.

https://www.youtube.com/watch?v=1R_81Np5New

How stable is MvvmForms? Have you done large LOB projects with it?

Oh, yes! Our team at ActiveDevelop is taking care of MvvmForms on a daily bases, because a couple of big projects in Germany rely on MvvmForms - some bigger than 1 Million lines of code. Since we are a German company, and we're started to localize MvvmForms to English, there are still a lot of German comments and XML-Docu-Tags inside the source - but we're working on it. But, MvvmForms is ready to be used, it is stable, reliable, thoroughly tested, and if you need special support or want to start with it urgently and need us to customize, localize or extend its functionality, than simply talk to us, so we can find a way to make this happen.

Can I use it both for CSharp and Visual Basic WinForms Projects?

Yes, with no limitations. A third of our current projects are in CSharp, the rest we do in VB, and parts of MvvmForms (the Mvvm Base Library for example) are in CSharp, as well. Other parts are in VB. So, as long as you do Windows Forms, your good to go - the language doesn't matter,

So, MvvmForms is Open Source. Then, it's free, right?

Yes, for open source projects. For propriety, commercial projects, it's not entirely free, but also almost as good as free. Our primary goal is to find new opportunities to help with our 25+ year expertise in designing LOB Applications, and especially to show a way for our customers to migrate their software from being a big, monolithic Win32-Software to a modern approach without risk, where they can go forward with cloud computing, Windows 10, Mobile Apps, and all that without redoing everything from scratch.

So, if you want us to help you with your existing Application by doing workshops, helping with designing a new architecture, finding a feasible migration concept, introducing Scrum to your team, or providing human resources for a limited period of time for the purpose of the modernisation process, we bring MvvmForms along. Then it's free for you, because you're our customer. Go ahead and use it: You got an implicit licence for any commercial use, if you are or have been our customer at one point. If you, however, do not want us, but you want the toolset, just talk to us, and we figure out the best support model for you: [email protected].

If you're maintaining an open source project under GPL, and you want to use it. Go ahead: Fork it, change it modify it, and sell it along with your Open Source App. That's Open Source! As long your Application which links to it, or uses classes which derive from MvvmForms is also GPL - that is perfectly OK. But, if you're managing a propriety, close source solution, and you want to use (link to, derive from) MvvmForms, you have to obtain one license per active developer.

Can I contribute?

Yes. Just create Pull Requests.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].