SlideShare a Scribd company logo
@slodge
MvvmCross
Gitte Vermeiren
@gittetitter
proq.blogspot.com
@slodge
@slodge
Can we do this?
Portable
Class
Libraries
Xamarin MvvmCross
@slodge
Portable Class Libraries
@slodge
@slodge
Profile 104
• WPF – 4.5+
• Windows Store (WinRT)
• Windows Phone – 7.1+
• Xamarin.Android
• Xamarin.iOS
@slodge
Xamarin
@slodge
Xamarin for Android/iOS
Business Logic
UI Logic
WP iOS Droid Win8
Data Access
Business Logic
Service Interface
Service Consumption Local Data/Services
Xamarin
@slodge
Xamarin for Android/iOS
Code
Completion
for Native
APIs
Visual Studio
Integration
Advanced
Debugging
Support
Point and
click UI
design
@slodge
Xamarin for Android/iOS
@slodge
MvvmCross
@slodge
View
ViewModel
Model
get/set
Properties
call Commands
notify changes
some messaging
Whatever C# you
like …
… messages work
well!
View
View
ViewModel
ViewModel
Model
Model
Cross Platform
Platform
Specific
@slodge
Separation
of Concerns
Designable
(Blend)
More
structured
code
TestableDatabinding
Code reuse
@slodge
Data Binding
@slodge
INotifyPropertyChanged
@slodge
Typical ViewModel Property
@slodge
One Way Binding
PersonViewModel
FirstName
LastName
DateOfBirth
First Name
Jon
Last Name
Doe
Date of birth
12/07/1989
@slodge
UI Syntax
@slodge
Two Way Binding
PersonViewModel
FirstName
LastName
DateOfBirth
First Name
Jon
Last Name
Doe
Date of birth
12/07/1989
@slodge
UI Syntax
@slodge
Interface Driven Development
@slodge
MyViewModel
Needs Location
Needs SQL
Needs Calculator
The
Container
My Tax
Calculator
Windows Phone
Location
Inversion of Construction
(Inversion of Control)
Windows Phone
SQL
@slodge
MyViewModel
Needs Location
Needs SQL
Needs Calculator
The
Container
My Tax
Calculator
iOS Location
Inversion of Construction
(Inversion of Control)
iOS SQL
@slodge
Mvx.Register<T>
The
Container
(Mvx)
@slodge
Automatic Registration
@slodge
Mvx.Resolve<T>
@slodge
Mvx Construction
• Constructor resolution
@slodge
Nuget packages
@slodge
TipCalc Demo

More Related Content

PDF
Helping the Lions Roar
PPTX
Community day mvvmcross
PPTX
Say hello to Xamarin 3
PPTX
Cross Platform Mobile Development with C# and Xamarin
PPTX
Cross platform development with c# and xamarin
PPTX
Xamarin overview droidcon.tn
PPTX
Xamarin Cross-Platform with Xamarin.Form, MvvmCross
PDF
Xamarin.forms Shell + Navigation
Helping the Lions Roar
Community day mvvmcross
Say hello to Xamarin 3
Cross Platform Mobile Development with C# and Xamarin
Cross platform development with c# and xamarin
Xamarin overview droidcon.tn
Xamarin Cross-Platform with Xamarin.Form, MvvmCross
Xamarin.forms Shell + Navigation

What's hot (20)

PPTX
Hybrid Mobile App Development - Xamarin
PPTX
Introducing mono & xamarin
PPTX
Introduction to xamarin
PPTX
Xamarin Overview by Houssem Dellai
PDF
Xamarin: The Future of App Development
PDF
Cross platform Xamarin Apps With MVVM
PPTX
Mobile Enterprise Success with Xamarin and IBM
PPTX
Designing mobile applications with xamarin
PDF
Mobile Banking Apps with Xamarin
PDF
Animating Xamarin.Forms
PPTX
Code on the Beach 2018: Build an E-Commerce Chatbot on Azure Bot Framework v4
PPTX
Xamarin.Forms
PPT
PPTX
PPTX
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
PPTX
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
PPTX
Intro to Building Mobile Apps with Xamarin
PPTX
Introduction to xamarin
PDF
Smaller Not Taller: Defeating the mobile application architecture giant
PPTX
.Net Standard Libraries and Xamarin
Hybrid Mobile App Development - Xamarin
Introducing mono & xamarin
Introduction to xamarin
Xamarin Overview by Houssem Dellai
Xamarin: The Future of App Development
Cross platform Xamarin Apps With MVVM
Mobile Enterprise Success with Xamarin and IBM
Designing mobile applications with xamarin
Mobile Banking Apps with Xamarin
Animating Xamarin.Forms
Code on the Beach 2018: Build an E-Commerce Chatbot on Azure Bot Framework v4
Xamarin.Forms
C# everywhere - Building Cross-Platform Apps with Xamarin and MvvmCross
Hitchhicker's Guide to Using Xamarin Forms with RESTful Services
Intro to Building Mobile Apps with Xamarin
Introduction to xamarin
Smaller Not Taller: Defeating the mobile application architecture giant
.Net Standard Libraries and Xamarin
Ad

Similar to Mvvm crossevent basics (20)

PPTX
Dev evening - MonoTouch, MonoDroid, Mvvm MvvmCross and databinding
PPTX
Wpug mvvm and data binding
PDF
Architecting Cross-Platform Apps with MvvmCross, Stuart Lodge
PPTX
Hot tuna - from Sean Cross
PPTX
MvvmCross
PPTX
Reaproveitamento de código com Xamarin e MVVM Cross
PDF
MvvmCross Seminar
PDF
MvvmCross Introduction
PPTX
Dia 4.1 mvvm cross
PPTX
Real world apps with Xamarin and MVVM
PDF
Portable Class Libraries and MVVM
PDF
Session dotNed Saturday 28 januari 2017
PDF
Cross platform mobile development with visual studio and xamarin
PPTX
Cross-platform Apps using Xamarin and MvvmCross - Martijn van Dijk - Codemoti...
PPTX
MVVM ( Model View ViewModel )
PPTX
Xamarin workshop
PPTX
Building xamarin.forms apps with prism and mvvm
PPTX
Xamarin & MvvmCross in depth
PDF
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
PPTX
Understanding The MVVM Pattern (TechDays Belgium)
Dev evening - MonoTouch, MonoDroid, Mvvm MvvmCross and databinding
Wpug mvvm and data binding
Architecting Cross-Platform Apps with MvvmCross, Stuart Lodge
Hot tuna - from Sean Cross
MvvmCross
Reaproveitamento de código com Xamarin e MVVM Cross
MvvmCross Seminar
MvvmCross Introduction
Dia 4.1 mvvm cross
Real world apps with Xamarin and MVVM
Portable Class Libraries and MVVM
Session dotNed Saturday 28 januari 2017
Cross platform mobile development with visual studio and xamarin
Cross-platform Apps using Xamarin and MvvmCross - Martijn van Dijk - Codemoti...
MVVM ( Model View ViewModel )
Xamarin workshop
Building xamarin.forms apps with prism and mvvm
Xamarin & MvvmCross in depth
Mvvm Pattern in Xamarin - MvvmCross and Xamarin.Forms
Understanding The MVVM Pattern (TechDays Belgium)
Ad

Recently uploaded (20)

PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Spectroscopy.pptx food analysis technology
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Encapsulation theory and applications.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Cloud computing and distributed systems.
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
KodekX | Application Modernization Development
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
sap open course for s4hana steps from ECC to s4
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Spectroscopy.pptx food analysis technology
NewMind AI Weekly Chronicles - August'25 Week I
Encapsulation theory and applications.pdf
Understanding_Digital_Forensics_Presentation.pptx
Network Security Unit 5.pdf for BCA BBA.
Unlocking AI with Model Context Protocol (MCP)
Cloud computing and distributed systems.
MYSQL Presentation for SQL database connectivity
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Empathic Computing: Creating Shared Understanding
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
KodekX | Application Modernization Development
How UI/UX Design Impacts User Retention in Mobile Apps.pdf

Mvvm crossevent basics

Editor's Notes

  • #2: Hi, a verygoodmorning, I hope you’reall ready for a daypackedwith demo’s on howtobuild cross platform mobile applicationswithmvvmcross. I am Gitte, and I work as a software consultant in Belgium. I have been writing mobile applicationsforsome time now and have been playingaroundwithXamarinforabout 2 years.A couplemonths back I alsodiscoveredmvvmcross as a great way touse the mvvmpatternacross multiple platforms. Using mvvmwhenyoubuildapplicationsfor multiple platforms is, in my opinion, a goodchoice, and mvvmcrossgivesyou a big part of the plumbingyouwillneedto get startedquickly. I spoke on thisduringthisyearstechdaysbe event, hostedby Microsoft. And we alsowrote the official techdaysbeappforthis event forwindowsphone, windows 8 and android, with the use of mvvmcross of course. Now, today I willbetalkingtoyouabout the basics of gettingstartedwithboth the mvvmpattern and mvvmcrossspecifically. As Stuart justtoldyou, later today we will go into more of a deepdivewithtalksabout more advanced user interfaces, navigation, using and writingplugins and so on. But let me first giveyou the basics.
  • #3: Let me first askyou the following question, who of you is familiarwithmvvm? As in: yup, I’vedone a project usingthispattern.Who of you is familiarwithmvvmcross? As in, yup, I’vebuildanappwithmvvmcross.
  • #4: Let me first askyou the following question, who of you is familiarwithmvvm? As in: yup, I’vedone a project usingthispattern.Who of you is familiarwithmvvmcross? As in, yup, I’vebuildanappwithmvvmcross.
  • #7: Other profile = 78
  • #9: Point and click UI designCode Completion for Native APIsAdvanced Debugging SupportVisual Studio Integration
  • #10: AccountsAddressBookAdSupportAudioToolboxAnimationBluetoothGraphicsCoreImageLocationsMediaCoreMotionSqlLiteDrmGesturesGoogleMapsHardwareUsbNfcOpenglSaxSpeechWallpaperTextServiceWidgetNet.HttpNet.WifiTelephonyCoreVideoGameKit
  • #11: Separation of ConcernsDesignable (Blend)TestableCode ReuseComplexityMore Code