Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Creating Desktop Apps with UWP (Show IT, Bratis...
Search
Christian Nagel
February 07, 2017
Programming
0
92
Creating Desktop Apps with UWP (Show IT, Bratislava 2017)
How to best support both WPF and UWP, and move from WPF to UWP
Christian Nagel
February 07, 2017
Tweet
Share
More Decks by Christian Nagel
See All by Christian Nagel
ASP.NET Core und ASP.NET Core MVC (BASTA! Spring 2017)
christiannagel
0
340
C# 7.0 - Neuheiten im Detail (BASTA! Spring 2017)
christiannagel
0
120
C# 7.0 - What's New (Show IT, Bratislava, 2017)
christiannagel
0
190
C# 7.0 - What's New (G2B TechEd Brno, 2017)
christiannagel
0
130
Creating Desktop Apps with UWP (G2B TechEd, Brno 2017)
christiannagel
0
100
WPF 4.5 - Die Neuerungen im Überblick
christiannagel
0
160
Async mit C# 5
christiannagel
1
150
Windows Store Apps mit C#
christiannagel
0
77
Tiles, Toasts & Notifications
christiannagel
0
100
Other Decks in Programming
See All in Programming
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
110
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
210
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
160
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
250
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
790
Cloudflare AgentsとAI SDKでAIエージェントを作ってみた
briete
0
140
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
800
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
210
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.8k
XP, Testing and ninja testing ZOZ5
m_seki
3
580
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
490
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Into the Great Unknown - MozCon
thekraken
40
2.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Producing Creativity
orderedlist
PRO
347
40k
Scaling GitHub
holman
463
140k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Designing for humans not robots
tammielis
254
26k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
620
Transcript
Creating Desktop Apps with UWP Christian Nagel @christiannagel www.cninnovation.com
Goals • When & how to use UWP for Data-Driven
Business Applications • Moving from WPF to UWP • Introducing important concepts for UWP
Non-Goals • A complete application • UI Styles • Desktop
Bridge for UWP • No Crashes (using Visual Studio 2017 RC)
Agenda WPF or UWP? Sharing Code UWP XAML Features
Christian Nagel • Training • Coaching • Consulting • Microsoft
MVP • thinktecture • www.cninnovation.com
None
WPF OR UWP? 1
All your users upgraded to Windows 10!
No
Why not always WPF? • Use New Features • Modern
Styling and APIs • Different Devices • Windows 10 uses UWP • Performance
UWP Features • Easy Deployment/Updates • New Controls • Data
Sharing • Tile Updates, Notifications
Windows 7 Users • WPF is necessary • Desktop Bridge
to add UWP Features for Win10 Users • Write the UI multiple times • Just the UI
SHARING CODE 2
Libraries • .NET Libraries only for WPF/.NET Framework • .NET
Core Libraries only for .NET Core • Portable Libraries for … • .NET Standard makes sharing easier
MVVM Pattern View View-Model Model INotifyPropertyChanged INotifyPropertyChanged Data Binding, Binding
to Commands XAML
Dependency Injection
What you’ve seen • Portable Libraries • MVVM removes strong
dependencies • DI Container makes DI easy
UWP XAML FEATURES 3
Assigning Commands
Compiled Binding
Controls
What you’ve seen • AppBar • Compiled Binding • Enhanced
TextBox • SplitView • RelativePanel • Adaptive Trigger
Summary • Use MVVM and DI with XAML • Portable
/ .NET Standard Library • XAML Features
Questions?
More Information (1) • https://docs.microsoft.com • Sample Code: • https://github.com/CNinnovation
More Information (2) • https://github.com/ProfessionalCSharp • https://csharp.christiannagel.com • https://www.cninnovation.com •
Training & Coaching
Thank you!
Images Copyright • Decision Time © Steve Woods • Yeah
© Redbaron • Sulky angry child © Godfer • Diversity workers © Vladimir Mucibabic • Injection © Maybe123 • Spousal Abuse Humor © Ken Hurst • Communication © Fantasista • Pilots in the plane © Nikolai Sorokin • Bratislava © Tomas1111 • http://www.dreamstime.com
www.showit.sk www.gopas.sk