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
98
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
390
C# 7.0 - Neuheiten im Detail (BASTA! Spring 2017)
christiannagel
0
130
C# 7.0 - What's New (Show IT, Bratislava, 2017)
christiannagel
0
210
C# 7.0 - What's New (G2B TechEd Brno, 2017)
christiannagel
0
140
Creating Desktop Apps with UWP (G2B TechEd, Brno 2017)
christiannagel
0
110
WPF 4.5 - Die Neuerungen im Überblick
christiannagel
0
160
Async mit C# 5
christiannagel
1
150
Windows Store Apps mit C#
christiannagel
0
95
Tiles, Toasts & Notifications
christiannagel
0
120
Other Decks in Programming
See All in Programming
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.6k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
4
2.2k
おれのAgentic Coding 2026/03
tsukasagr
1
120
LM Linkで(非力な!)ノートPCでローカルLLM
seosoft
0
280
安いハードウェアでVulkan
fadis
1
850
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
200
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
290
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
150
モダンOBSプラグイン開発
umireon
0
190
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
220
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
250
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
190
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
280
A designer walks into a library…
pauljervisheath
210
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Prompt Engineering for Job Search
mfonobong
0
240
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
The SEO identity crisis: Don't let AI make you average
varn
0
430
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Claude Code のすすめ
schroneko
67
220k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
200
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
500
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