5. Universal
Windows
Platform
• Neue Features
• Controls, Compiled Binding
• Modernes User Interface
• Built-in Animations, Fluent Design
• Plattformen
• Desktop, Mobile, HoloLens,
Xbox One
• Installation mit Windows App Store,
Sideloading, Web Install
• Compiles to native code
• Verwendet von Windows 10 Settings,
Apps…
6. UWP -
Modern
Controls
• NavigationView
• RelativePanel
• Hub
• Flip View
Layout
• TextBox mit Header
• CommandBar/AppBar
• Inking
• AutoSuggest
Elements
and Lists
13. Desktop Bridge
• Nutzen von UWP Features in
WPF
• Reuse von bestehenden Desktop
Applikationen
• Windows 10 Build 14393 oder
neuer
• Installation über Windows Store
oder Sideloading
14. Demo
• Create App Package
• Show Package
• Use Windows APIs
• Launch UWP App
17. 1. Windows
Compatibility
Pack
• Windows Compatibility Pack
for .NET Core 2.1
• .NET Core 2.0 has been
enhanced with thousands
APIs
• Add more for Windows
• Microsoft.Win32.Registry
• System.CodeDom
• System.Configuration.Conf
igurationManager
• System.Data.SqlClient
• System.Drawing
• System.ServiceProcess
• System.ServiceModel
• …
18. 2. UWP Controls in a Library
Bisher
• Controls Teil der Windows Runtime
• Neue Controls mit Windows Runtime
Updates
• Warten für User Updates
Neu
• Windows UI Library
• Windows Controls Open Source
• Controls können sofort verwendet werden
• Verfügbar für ältere Windows 10 Versionen
https://github.com/Microsoft/microsoft-ui-xaml
20. XAML Island Architecture
UWP XAML Control
XAML Bridge Source WinRT API
HWND
WPF XAML Host WinForms XAML Host
Control Wrappers Custom Controls
21. Limitations
• HWND Airspace
• Tooling
• Multiple top level Windows run
on different threads
• Accessibility
• Accelerator keys
• x:Bind needs .NET Standard
Library
• no Reveal fluent effect
• Hosting custom user controls
• Inline ink with Input Controls
• …
22. 4. .NET Core
3.0 & WPF
Supports Windows Forms und WPF
XAML Islands
XAML Controls
Access to all Windows 10 APIs
.NET Core App Bundler
23. Is your WPF
App ready?
• .NET Core 3.0 API Desktop Analyzer
• https://blogs.msdn.microsoft.com/
dotnet/2018/08/08/are-your-
windows-forms-and-wpf-
applications-ready-for-net-core-3-
0/
24. Why Desktop
on .NET Core?
Side-by-side
Machine global or app local
Core runtime and API
improvements
New .csproj
25. MSIX – Das neue InstallationsPaket
• Containerization
MSI
APPX
MSIX
28. Decisions – Desktop App
Legacy
WPF?
MVVM
& DI
Arch?
Y
Y
Create UWP
App
N
N Window
10 soon?
Use Desktop
Bridge
Y
N Wait for .NET
Core 3.0
Advanced
Features?
Use Microsoft
Toolkit
Y
N
29. Alternative (1) – Desktop App
Legacy
WPF?
MVVM
& DI
Arch?
Y
Y
Create UWP
App
N
N Convert
to MVVM
& DI
Y
N
Create
Xamarin App