SlideShare a Scribd company logo
MVVMWindowsUWP
Apps withTemplate 10
Jiri Danihelka
Blank template
• Blank App.xaml
• Blank MainPage.xaml/cs
• Blank MainPageViewModel.cs
• References
– XAML Behaviors SDK
– Newtonsoft JSON
– Template 10
Minimal template
• Folder conventions
• Settings Service
• Custom.xaml
• Extra features
– Splash.xaml
– Busy.xaml
– DetailsPage.xaml
Hamburger template
• Hamburger Menu
– Shell.xaml
• Folder conventions
• Settings Service
• Custom.xaml
• Extra features
– Splash.xaml
– Busy.xaml
– DetailsPage.xaml
Navigation service
• Enable consistent frame navigation
• Pass parameters to view-models
• Wrap the frame in a frame façade
• Extended behavior
– Refresh()
– OpenAsync()
– Save/RestoreNavState()
Navigation service
Settings helper
• Read, Write, and Cast
• Manages sub-containers
• Typically, used in your own Settings Service
Settings service
Logging service
• Disabled by default
• Writes T10 internal operations
• Add logging to any Windows app
• Customizable WriteLine() output
Logging service
Bootstrapper
It's responsibilities include:
1. Handling an extended splash screen
2. Creating the root frame
3. Wrapping the root in a modal dialog
4. Creating the navigation service
5. Aggregating activation paths
6. Automate suspension management
7. Support view-model injection
The activation pipeline
Special cases
• Application prelaunch
• Resuming from termination
• Special activation (file, protocol, share, etc.)
Constructor() OnInitializeAsync()
OnPrelaunchAsync()
[ optional ]
OnStartAsync()
Window wrapper
• Application View
• ActiveWrappers
• UI thread dispatcher
• Nested Navigation Services
• Close() method
Dispatcher wrapper
• Current
• Simplified dispatch
• Awaitable dispatch
Mvvm.BindableBase
• Reusable implementation of
INotifyPropertyChanged
• Marshals the PropertyChanged event
onto the current UI thread
Mvvm.DelegateCommand
• Reusable implementation of Icommand
– Support for CommandParameter
• Intended for Button controls
Mvvm.ViewModelBase
• Reusable implementation of INavigable
which enables the navigation service
Template 10 supports third-party frameworks
• MVVM Light
• Prism MVVM
• Caliburn Micro
• Others…
Template 10 supports MVVM-related patterns
• Blend design-time support
• Dependency injection
• Messaging
Page header
• Create a common page element
– Including header text
– Including primary buttons
– Including secondary buttons.
• Allows developers to create an easy uniform page UI.
Page header
• Key Features
– Primary buttons/commands
– Secondary buttons/commands (ellipsis menu)
– Back button, wired to navigate
– Easy look-and-feel style customization
Page header
Page header
• Navigation
– Add Frame reference
– Make Back button “visible”
– Ongoing visibility controlled by
Frame.CanGoBack, et al.
– Optional Bootstrapper.ShowShellBackButton = true;
– Developer can override back behavior
• Handle the Bootstrapper.BackRequested event
• Set args.Handled = true to stop back propagation
Page header
• Customization
– Text to define the text displayed
in the header (typically, the title
of the page)
– HeaderForeground to define the
text color of the header
– HeaderBackground to define
the background color of the
header
Page header
• PageHeader offers two categories of commands:
– PrimaryCommands are always visible.
– SecondaryCommands are hidden by default.

More Related Content

PPTX
WebAssembly overview. KievJS meetup
PPTX
Advance java session 9
PPTX
SharePoint Ribbon Deep Dive
PPTX
Introduction to node.js
PDF
Server Side Apocalypse, JS
PPT
Jsp Comparison
PPTX
Week01 jan19 introductionto_php
PPT
Inland Empire .NET User's Group Silverlight Class
WebAssembly overview. KievJS meetup
Advance java session 9
SharePoint Ribbon Deep Dive
Introduction to node.js
Server Side Apocalypse, JS
Jsp Comparison
Week01 jan19 introductionto_php
Inland Empire .NET User's Group Silverlight Class

What's hot (20)

PPT
Introducing MongoBase
PPTX
Практическая оптимизация сервер сайд: современные реалии
PDF
Евгений Самоненко - Практическая оптимизация сервер сайд современные реалии
PPT
Introducing MongoPress
PPT
Jsp(java server pages)
PPTX
From HTML to pixels on the Screen
KEY
Sugarcoating your frontend one ViewModel at a time
PPTX
Implementation of GUI Framework part3
PPTX
Implementation of gui framework part1
PPTX
Web Assembly Big Picture
PPT
The Mobile Development Landscape
PPTX
Implementation of gui framework part2
PDF
Realtime web apps rails
PDF
Jive the renovation of Aswing
PDF
Components now!
PDF
Introduction to backbone js
PPSX
Introduction to backbone_js
PDF
Hello npm
KEY
Scrabbly GTUG presentation
PPT
Zend framework 02 - mvc
Introducing MongoBase
Практическая оптимизация сервер сайд: современные реалии
Евгений Самоненко - Практическая оптимизация сервер сайд современные реалии
Introducing MongoPress
Jsp(java server pages)
From HTML to pixels on the Screen
Sugarcoating your frontend one ViewModel at a time
Implementation of GUI Framework part3
Implementation of gui framework part1
Web Assembly Big Picture
The Mobile Development Landscape
Implementation of gui framework part2
Realtime web apps rails
Jive the renovation of Aswing
Components now!
Introduction to backbone js
Introduction to backbone_js
Hello npm
Scrabbly GTUG presentation
Zend framework 02 - mvc
Ad

Similar to MVVM Windows UWP apps with Template 10 (20)

PPTX
Advanced MVVM Windows UWP apps with Template 10
PPTX
Windows Store app using XAML and C#: Enterprise Product Development
PDF
Introduction To MVVM
PDF
MVVM Light Toolkit Works Great, Less Complicated
PDF
MVP Community Camp 2014 - How to use enhanced features of Windows 8.1 Store ...
PPTX
Windows Phone 7 Silverlight MVVM App the Test-Driven
PPTX
Windows Store Apps: Tips & Tricks
PDF
XAML Development with Xamarin - Jesse Liberty | FalafelCON 2014
PDF
Session dotNed Saturday 28 januari 2017
PPTX
Adopting MVVM
PPTX
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
PPTX
Windows Phone 7 Unleashed Session 1
PPTX
MVVM ( Model View ViewModel )
PPTX
Building xamarin.forms apps with prism and mvvm
PPTX
Windows Phone Application development
PPTX
Advanced MVVM in Windows 8
PPTX
Introduction to WPF and MVVM
PDF
WPF - the future of GUI is near
PPTX
MVVM - Model View ViewModel
PPTX
Wi phug windows phone development from z to a
Advanced MVVM Windows UWP apps with Template 10
Windows Store app using XAML and C#: Enterprise Product Development
Introduction To MVVM
MVVM Light Toolkit Works Great, Less Complicated
MVP Community Camp 2014 - How to use enhanced features of Windows 8.1 Store ...
Windows Phone 7 Silverlight MVVM App the Test-Driven
Windows Store Apps: Tips & Tricks
XAML Development with Xamarin - Jesse Liberty | FalafelCON 2014
Session dotNed Saturday 28 januari 2017
Adopting MVVM
Build 2017 - B8100 - What's new and coming for Windows UI: XAML and composition
Windows Phone 7 Unleashed Session 1
MVVM ( Model View ViewModel )
Building xamarin.forms apps with prism and mvvm
Windows Phone Application development
Advanced MVVM in Windows 8
Introduction to WPF and MVVM
WPF - the future of GUI is near
MVVM - Model View ViewModel
Wi phug windows phone development from z to a
Ad

More from Jiri Danihelka (20)

PDF
Distributed Mobile Graphics
PPTX
Mixed reality for Windows 10
PPTX
New Xaml components for Windows developers
PPTX
An introduction to development of universal applications
PPTX
Windows game development with Unity 5
PPTX
Creating great Unity games for Windows 10 - Part 2
PPTX
Creating great Unity games for Windows 10 - Part 1
PPTX
Prism library and MVVM
PPTX
UWP apps development - Part 3
PPTX
UWP apps development - Part 2
PPTX
UWP apps development - Part 1
PPTX
Designing Windows apps with Xaml
PPTX
Windows UX
PPTX
Blend for Visual Studio 2015
PPTX
Security misconfiguration
PPTX
Windows 10 Mobile and Distributed Graphics
PPTX
Security hardening and drown attack prevention for mobile backend developers
PPTX
Top 10 security risks for mobile backend developers
PPTX
Programování Windows 8
PPTX
Vývoj pro Microsoft Surface a HoloLens
Distributed Mobile Graphics
Mixed reality for Windows 10
New Xaml components for Windows developers
An introduction to development of universal applications
Windows game development with Unity 5
Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 1
Prism library and MVVM
UWP apps development - Part 3
UWP apps development - Part 2
UWP apps development - Part 1
Designing Windows apps with Xaml
Windows UX
Blend for Visual Studio 2015
Security misconfiguration
Windows 10 Mobile and Distributed Graphics
Security hardening and drown attack prevention for mobile backend developers
Top 10 security risks for mobile backend developers
Programování Windows 8
Vývoj pro Microsoft Surface a HoloLens

Recently uploaded (20)

PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
ai tools demonstartion for schools and inter college
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Digital Strategies for Manufacturing Companies
PTS Company Brochure 2025 (1).pdf.......
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
ai tools demonstartion for schools and inter college
Which alternative to Crystal Reports is best for small or large businesses.pdf
Nekopoi APK 2025 free lastest update
2025 Textile ERP Trends: SAP, Odoo & Oracle
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Upgrade and Innovation Strategies for SAP ERP Customers
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
VVF-Customer-Presentation2025-Ver1.9.pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
ISO 45001 Occupational Health and Safety Management System
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Navsoft: AI-Powered Business Solutions & Custom Software Development
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Wondershare Filmora 15 Crack With Activation Key [2025
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Digital Strategies for Manufacturing Companies

MVVM Windows UWP apps with Template 10