mike taulty wpf dev days
TRANSCRIPT
Beyond Silverlight with WPFMike TaultyMicrosoft UK
mail: [email protected]: mtaulty.comtweets: mtaulty
www.microsoft.nl/devdays
the battle for the client
“browser”
“client”
pros/cons of different client types
browser “client”
richness of user experience
simplicity of deployment
depth of platform integration
developer productivity*
security sandboxing*
availability of client runtime
XNA
.net client technologies
HTML
AJAX
Silverlight
Windows Forms
WPFUI Richness 5
Deployment Ease 10
Developer Productivity 7
Platform Integration 1
Degree of Sandboxing 8
Online/Offline Working 1
Runtime Availability 7
UI Richness 8
Deployment Ease 10
Developer Productivity 9
Platform Integration 5
Degree of Sandboxing 10
Online/Offline Working 7
Runtime Availability 5UI Richness 7
Deployment Ease 5
Developer Productivity 9
Platform Integration 8
Degree of Sandboxing 4
Online/Offline Working 10
Runtime Availability 6
UI Richness 9
Deployment Ease 6
Developer Productivity 9
Platform Integration 9
Degree of Sandboxing 4
Online/Offline Working 10
Runtime Availability 7
UI Richness 10
Deployment Ease 6
Developer Productivity 4
Platform Integration 10
Degree of Sandboxing 1
Online/Offline Working 10
Runtime Availability 3
UI Richness 1
Deployment Ease 10
Developer Productivity 7
Platform Integration 1
Degree of Sandboxing 10
Online/Offline Working 1
Runtime Availability 10
browser v client == silverlight v WPF ?
“browser”
“client”
Desktop
Silverlight != browser, desktop != WPF
Browser
Silverlight 3• Out of browser
applications• Network status detection
WPF• XAML brower applications• CAS Sandbox
Silverlight is a loose subset of WPF
Core Capabilities
.NET Framework
Developer Model
Tooling
Fixed Security SandboxFlexible (CAS based ) Security Sandbox
client continuum – re-use of skills, code
XAML
XAML & Code Consistency ( high compatibility )
Taking a Silverlight example to WPF
DEMO
beyond Silverlight: core capabilities
2D Vector Graphics
Rectangle
Polygon
Line
Polyline
PathGeometry
Ellipse
Text
Brushes
Media
WMV
WMA
MP3
Ink
Layout Animation Composition
WMV1WMV2WMV3WMVA
WMVC1
WMA7WMA8WMA9
beyond Silverlight: core capabilities
2D Vector Graphics
Rectangle
Polygon
Line
Polyline
PathGeometry
Ellipse
Text
Brushes
Media
WMV
WMA
MP3
Ink
Layout Animation Composition
WMV1WMV2WMV3WMVA
WMVC1
WMA7WMA8WMA9
Controls
Content Controls
User Controls
StylingTemplated
Custom Controls
GPU Acceleration
Brushes
HTML Display
Documents
Speech
Ink
3D Graphics
2D on 3D Surfaces
and more...
Beyond Silverlight: Core Capabilities
DEMO
beyond Silverlight: developer model
SilverlightDevelopment
Visual Studio 2008
Expression Blend
XAML
Code Behind
Data BindingResources
Styles
Animations
LayoutVS 2008 XAML EditorData BindingTriggersCommands/GesturesInteroperabilityPrintingEvent systemUI AutomationNavigation modelFull .NET Clientand more...
Beyond Silverlight: Developer Model
DEMO
WPF control availability
WPF Controls – Microsoft and 3rd Party
DEMO
*in extended support phase
deployment of WPF runtime
RTM: V3.0Sp1: V3.0 Sp1
RTM: V3.5 Sp1
WindowsUpdatesoon torecommendV3.5 Sp1
.NET Client Profile
• Trimmed .NET Framework 3.5 Sp 1 for Clients• Customisable installation process
– Online bootstrapper ( ~270KB )– Offline installer ( ~ 250MB )
• Works with XBAP, ClickOnce, Setup.exeTarget
has.NET?
Install 3.5 Sp1
Reboot
Admin Required
Yes
Install ~28MB Client Profile
No Reboot
Admin Required
Schedule 3.5 Sp1 Install
No
The .NET Client Profile ( .NET 3.5 Sp1 )
DEMO
deployment of WPF applications
XAML Browser Application(XBAP)
Online Only
Simple Deployment
Automatic Updates
Tight, “Fixed” Sandbox
ClickOnce Application
Offline/Online
“Flexible” Deployment
Updating Framework
“Flexible” Sandbox
Full Client
Offline/Online
Custom Deployment
Roll Your Own Updates
No Sandbox
XBAPs/ClickOnce deployment
DEMO
futures: VS2010 and WPF V4.0
Visual Studio 2010
• Visual Studio 2010 UI rewritten in WPF• Big improvements in WPF Editor ( ‘Cider’ )
Deployment – Smaller, Faster Client Profile
• Supports installation on any previous .NET framework version
Windows 7
• Multi-touch support including gestures and manipulation• TaskBar integration• Ribbon support and better common dialog support
Graphics
• Text rendering improvements• Pixel Shader 3.0 support• Performance work – 3D improvements and cached composition
browser v client == silverlight v WPF ?
“browser”
“client”
Beyond Silverlight with WPFMike TaultyMicrosoft UK
mail: [email protected]: mtaulty.comtweets: mtaulty
www.microsoft.nl/devdays