SlideShare a Scribd company logo
1 of 53
WPF 4
Ted Hu ::tedhu@microsoft.com / twitter: @tedhu  Community Program Manager  Microsoft Windows Presentation Foundation
Objectives Give You A Concrete Understanding of WPF 4 New Features in WPF 4 Windows 7 light up Tooling improvements Tells You Which Features Can Also Be Used With .NET 3.5SP1 and How 3.5 SP1 is Preinstalled with Windows 7 Answer Questions (during Q&A) 3.5 SP1
.NET 3.5 SP1Prior Art Released on 11 August 2008 Number Of Bug Fixes And Improvements Feature-packed Service Release Performance. 15-45% performance improvements for key startup and runtime scenarios Startup: Optimizing CLR NGEN layout, disk I/O, JIT code gen Runtime: Graphics, data, text, to animation Deployment. .NET 3.5 SP1 Client Profile, ClickOnce Graphics. Extensible Shader Effects with HLSL support, Direct3D Interop 3.5 SP1 More @ http://windowsclient.net/wpf/wpf35/wpf-whats-new-35sp1.aspx
History ,[object Object]
Common set of tools (VS, Blend), and programming model (XAML, .NET)
Redefined RDA and RIA programming,[object Object]
Data controls
Accessibility Improvements
Chart Controls
Control Themes
Hundreds of good bug fixes…
Plus all the goodness of .NET 4!
Dynamic Language Support
MEF
Globalization and NLS improvements
Managed / Native Code interopMore… ,[object Object]
Cached compositions
Text clarity
Layout Rounding
ClickOnce improvements
Multitouch
Win7 Taskbar
Win7 Ribbon
Focus mgt improvements
Support for UIAccessible2
VSM integration
Full Trust XBaps
Pixel Shader 3Scott Guthrie’s WPF 4  blog post  http://weblogs.asp.net/scottgu/archive/2009/10/26/wpf-4-vs-2010-and-net-4-0-series.aspx
WPF 4 Windows 7 Taskbar Integration  Multitouch Improved Fundamentals Graphics: Cache Composition, Pixel Shader 3 New Text Rendering Stack Layout Rounding Deployment Streamlined : Client Profile, ClickOnce Enabled Visual Studio’s UI and Editor Better Tooling
WPF for Windows 7 Rapid Application Development on Win7 Innovations Multi-Touch Taskbar DirectWrite for Text Rendering Control  Toolkit (Ribbon, etc.) Common Dialogs File Explorer Presence and Customization More… Use with .NET or via XAML in WPF
WPF Taskbar Integration Thumbnails toolbars  Icon overlays  Progress bars  Jumplists With XAML Support 3.5 SP1
<Application x:Class="Fishbowl.App"> <JumpList.JumpList> <JumpListShowRecentCategory="True"> <JumpTask  Title="Slideshow"  Arguments="/Slideshow" /> <JumpTask  Title="Latest News"  Arguments="/Newsfeed" /> <JumpTask  Title="Sync Now"  Arguments="/Synchronize" /> </JumpList> </JumpList.JumpList> </Application> 3.5 SP1
WPF 4 Multitouch UIElement changes Manipulation Events (tracking and interpreter) Touch System Gesture events (double-tap, rollover) Raw Touch Input Events (for going to the metal) Multi-touch support in controls ScrollViewer Update to accept pan gestures Base Controls Updated to be multi-touch aware Multi-capture Support for more than one contact point at time New Multi-touch Controls e.g. ScatterView Compatible with Surface SDK 2.0
Touch Development Roadmap Windows 7 Release NET 4 / Surface 2.0 Release Native Win32 Application WinFormsApplication WPF Application Surface Application Surface SDK 1.0 Surface SDK 2.0 Multi-Touch Controls Surface   Multi-Touch Controls & API Multi-Touch API WPF 3.5 SP1 WPF 4 WPF 3.5 Managed Wrapper and Interop Managed Wrapper and Interop Multi-Touch API and Controls Surface Hardware Windows 7 Surface Hardware Windows Vista Windows 7 Multi-Touch API
Microsoft Pivot Seesmic Look Available now at http://fishbowlclient.com Multitouch Taskbar  demo
WPF 3.5 SP1 Multi-Touch Support Enabling Multi-touch Input Multi-touch Input via Stylus events Implementing Multiple Capture Using Win7 Manipulation and Inertia Processors Windows Multitouch Sample .NET Interop Library http://code.msdn.microsoft.com/WindowsTouch 3.5 SP1 14
Windows API Code Pack for .NET Vista and Windows 7 Restart and Recovery Transactions Search Network and power aware Windows 7 Sensor Platform Federated Search Controlling any related services More…  3.5 SP1
FundamentalsA Quality-First Release Framework Deployment Application Deployment Text Clarity Layout Rounding / Snapping Graphics Performance Improved Interop UIAutomation – For accessibility and VS Test Tools
Framework Deployment .NET 4 is a Side by Side release! Visual Studio 2010 supports multi-targeting (e.g. Silverlight + WPF v3 and 4) Client Profile SKU & Setup Improvements
Client Profile SKU Smaller, Faster NET Framework SKU .NET Framework Client: 28mb Setup optimizations for ngen, download, etc. Works across ALL CONFIGURATIONS Brandable deployment experience Developers can customize  app deployment experience to match brand Can integrate framework and app installers Tools and documentation for creating these packages Easier application deployment Developers may use deployment bootstrapper to manage the installation of their app and pre-reqs Will install application after the framework and launch it (.msi, .application or .xbap) 3.5 SP1
Setup and Size .NET 4 Client Profile is the default target in almost all VS 2010 Client Project Templates  (WinForms, WPF, VSTO) Supported on all OS that Full .NET is .NET 4 Full & Client offer big improvements 75%+ size reduction over earlier versions 48 MB Full (x86/x64); 28 MB Client (x86) Both Full and Client Support x86 & x64 Size on media  combined x86/x64 package
Setup and Client Profile  .NET 4 Full & Client Profile Size & Deployment Perf Client x86=~28MB, Client x86/x64=~41MB  (similar size to x86 3.5SP1 Client Profile with lots more features ) Full x86=~35MB , Full x86/x64=~48MB (from ~240MB in 3.5Sp1 ) Client Profile is a First-Class Citizen Client Profile Is The De Facto Framework that will be available on Windows Update for desktop PCs Can Be Serviced Independently (of Full Framework) as Standalone & serviceable package (does not require Full Framework) Supported by Visual Studio 2010 in all respects (e.g. targeting, deployment project, etc).
Available now at http://photosuru.com Client Profile demo
What is ClickOnce? Technology to help deploy, version and update rich clients Supports automatic detection and deployment of application updates Provides bootstrapping capabilities Applications execute in a secure sandbox with support for safe permission elevation
ClickOnce Deployment Originally released with .NET Framework 2.0  .NET Framework 3.5 Can move deployment locations Can support third-party publishing and branding Manifest Generating and Editing Tool  improved .NET Framework 3.5 SP1 Can publish unsigned applications Better FireFox support Design-time file associations
ClickOnce Deployment Continuing Improvements For ClickOnce to enable more seamless app install & update Command-line arguments for CO-deployed apps File associations for CO deployed apps Background auto-updates and custom install User Experience 3.5 SP1
The ClickOnce Experience Web Server
Deploying Using ClickOnceOnline-Only Update Scenario Publish.htm Client Workstation MyApp MyApp V1  Domain Publish.htm MyApp.application MyApp_1.0.0.0 HTTP MyApp_1.1.0.0 Check manifest for updates  MyApp.exe.manifest Download updates Web Server
ClickOnce Background Update demo
Problems Solved by ClickOnce Choice of web, UNC or CD installation On demand feature deployment Automatic application updates Support for application rollback Removal of version conflicts … Administrators can control how applications are granted permissions, safe elevation
(Pre-4) WPF Text Rendering
WPF 4 <left> vs. GDI <right>

More Related Content

Viewers also liked

Overview of Visual Studio Team System 2010
Overview of Visual Studio Team System 2010Overview of Visual Studio Team System 2010
Overview of Visual Studio Team System 2010joycsc
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPFDoncho Minkov
 
3 power point synopsis writing
3 power point synopsis writing3 power point synopsis writing
3 power point synopsis writingmichb41
 

Viewers also liked (6)

An Overview Of Wpf
An Overview Of WpfAn Overview Of Wpf
An Overview Of Wpf
 
WPF - An introduction
WPF - An introductionWPF - An introduction
WPF - An introduction
 
Overview of Visual Studio Team System 2010
Overview of Visual Studio Team System 2010Overview of Visual Studio Team System 2010
Overview of Visual Studio Team System 2010
 
Introduction to XAML and WPF
Introduction to XAML and WPFIntroduction to XAML and WPF
Introduction to XAML and WPF
 
3 power point synopsis writing
3 power point synopsis writing3 power point synopsis writing
3 power point synopsis writing
 
Format Of Synopsis
Format Of SynopsisFormat Of Synopsis
Format Of Synopsis
 

Similar to Wpf4 july2010

What Is New In Wpf 3.5 Sp1
What Is New In Wpf 3.5 Sp1What Is New In Wpf 3.5 Sp1
What Is New In Wpf 3.5 Sp1rsnarayanan
 
Windows Presentation Foundation
Windows Presentation FoundationWindows Presentation Foundation
Windows Presentation FoundationTran Ngoc Son
 
Lap around .net 4
Lap around .net 4Lap around .net 4
Lap around .net 4Abdul Khan
 
What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1ukdpe
 
C:\Users\User\Desktop\Eclipse Infocenter
C:\Users\User\Desktop\Eclipse InfocenterC:\Users\User\Desktop\Eclipse Infocenter
C:\Users\User\Desktop\Eclipse InfocenterSuite Solutions
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightRe-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightFrank La Vigne
 
High-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control ToolkitHigh-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control Toolkitgoodfriday
 
Wiring the Web
Wiring the WebWiring the Web
Wiring the Webgoodfriday
 
Openmeetings
OpenmeetingsOpenmeetings
Openmeetingshs1250
 
Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with PythonBrian Lyttle
 
N-Tier Application with Windows Forms - Deployment and Security
N-Tier Application with Windows Forms - Deployment and SecurityN-Tier Application with Windows Forms - Deployment and Security
N-Tier Application with Windows Forms - Deployment and SecurityPeter Gfader
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0Antonio Chagoury
 
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019  Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019 Allan De Castro
 
TestComplete 7.50 New Features
TestComplete 7.50 New FeaturesTestComplete 7.50 New Features
TestComplete 7.50 New FeaturesVlad Kuznetsov
 
TestComplete 7.50 New Features
TestComplete 7.50 New FeaturesTestComplete 7.50 New Features
TestComplete 7.50 New FeaturesVlad Kuznetsov
 

Similar to Wpf4 july2010 (20)

What Is New In Wpf 3.5 Sp1
What Is New In Wpf 3.5 Sp1What Is New In Wpf 3.5 Sp1
What Is New In Wpf 3.5 Sp1
 
Windows Presentation Foundation
Windows Presentation FoundationWindows Presentation Foundation
Windows Presentation Foundation
 
Lap around .net 4
Lap around .net 4Lap around .net 4
Lap around .net 4
 
What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1What's New for Presentation in Visual Studio 2008 SP1
What's New for Presentation in Visual Studio 2008 SP1
 
C:\Users\User\Desktop\Eclipse Infocenter
C:\Users\User\Desktop\Eclipse InfocenterC:\Users\User\Desktop\Eclipse Infocenter
C:\Users\User\Desktop\Eclipse Infocenter
 
What's New in Silverlight 5
What's New in Silverlight 5What's New in Silverlight 5
What's New in Silverlight 5
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightRe-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
 
High-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control ToolkitHigh-Speed Development with the AJAX Control Toolkit
High-Speed Development with the AJAX Control Toolkit
 
Wiring the Web
Wiring the WebWiring the Web
Wiring the Web
 
Openmeetings
OpenmeetingsOpenmeetings
Openmeetings
 
Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with Python
 
Enhancements
Enhancements Enhancements
Enhancements
 
PPT1
PPT1PPT1
PPT1
 
N-Tier Application with Windows Forms - Deployment and Security
N-Tier Application with Windows Forms - Deployment and SecurityN-Tier Application with Windows Forms - Deployment and Security
N-Tier Application with Windows Forms - Deployment and Security
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
 
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019  Power Apps Component Framework - Dynamics Power! 365 Paris 2019
Power Apps Component Framework - Dynamics Power! 365 Paris 2019
 
TestComplete 7.50 New Features
TestComplete 7.50 New FeaturesTestComplete 7.50 New Features
TestComplete 7.50 New Features
 
TestComplete 7.50 New Features
TestComplete 7.50 New FeaturesTestComplete 7.50 New Features
TestComplete 7.50 New Features
 
Silverlight Training
Silverlight TrainingSilverlight Training
Silverlight Training
 
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
 

Recently uploaded

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Recently uploaded (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Wpf4 july2010

  • 2. Ted Hu ::tedhu@microsoft.com / twitter: @tedhu Community Program Manager Microsoft Windows Presentation Foundation
  • 3. Objectives Give You A Concrete Understanding of WPF 4 New Features in WPF 4 Windows 7 light up Tooling improvements Tells You Which Features Can Also Be Used With .NET 3.5SP1 and How 3.5 SP1 is Preinstalled with Windows 7 Answer Questions (during Q&A) 3.5 SP1
  • 4. .NET 3.5 SP1Prior Art Released on 11 August 2008 Number Of Bug Fixes And Improvements Feature-packed Service Release Performance. 15-45% performance improvements for key startup and runtime scenarios Startup: Optimizing CLR NGEN layout, disk I/O, JIT code gen Runtime: Graphics, data, text, to animation Deployment. .NET 3.5 SP1 Client Profile, ClickOnce Graphics. Extensible Shader Effects with HLSL support, Direct3D Interop 3.5 SP1 More @ http://windowsclient.net/wpf/wpf35/wpf-whats-new-35sp1.aspx
  • 5.
  • 6. Common set of tools (VS, Blend), and programming model (XAML, .NET)
  • 7.
  • 12. Hundreds of good bug fixes…
  • 13. Plus all the goodness of .NET 4!
  • 15. MEF
  • 16. Globalization and NLS improvements
  • 17.
  • 29. Pixel Shader 3Scott Guthrie’s WPF 4 blog post http://weblogs.asp.net/scottgu/archive/2009/10/26/wpf-4-vs-2010-and-net-4-0-series.aspx
  • 30. WPF 4 Windows 7 Taskbar Integration Multitouch Improved Fundamentals Graphics: Cache Composition, Pixel Shader 3 New Text Rendering Stack Layout Rounding Deployment Streamlined : Client Profile, ClickOnce Enabled Visual Studio’s UI and Editor Better Tooling
  • 31. WPF for Windows 7 Rapid Application Development on Win7 Innovations Multi-Touch Taskbar DirectWrite for Text Rendering Control Toolkit (Ribbon, etc.) Common Dialogs File Explorer Presence and Customization More… Use with .NET or via XAML in WPF
  • 32. WPF Taskbar Integration Thumbnails toolbars Icon overlays Progress bars Jumplists With XAML Support 3.5 SP1
  • 33. <Application x:Class="Fishbowl.App"> <JumpList.JumpList> <JumpListShowRecentCategory="True"> <JumpTask Title="Slideshow" Arguments="/Slideshow" /> <JumpTask Title="Latest News" Arguments="/Newsfeed" /> <JumpTask Title="Sync Now" Arguments="/Synchronize" /> </JumpList> </JumpList.JumpList> </Application> 3.5 SP1
  • 34. WPF 4 Multitouch UIElement changes Manipulation Events (tracking and interpreter) Touch System Gesture events (double-tap, rollover) Raw Touch Input Events (for going to the metal) Multi-touch support in controls ScrollViewer Update to accept pan gestures Base Controls Updated to be multi-touch aware Multi-capture Support for more than one contact point at time New Multi-touch Controls e.g. ScatterView Compatible with Surface SDK 2.0
  • 35. Touch Development Roadmap Windows 7 Release NET 4 / Surface 2.0 Release Native Win32 Application WinFormsApplication WPF Application Surface Application Surface SDK 1.0 Surface SDK 2.0 Multi-Touch Controls Surface Multi-Touch Controls & API Multi-Touch API WPF 3.5 SP1 WPF 4 WPF 3.5 Managed Wrapper and Interop Managed Wrapper and Interop Multi-Touch API and Controls Surface Hardware Windows 7 Surface Hardware Windows Vista Windows 7 Multi-Touch API
  • 36. Microsoft Pivot Seesmic Look Available now at http://fishbowlclient.com Multitouch Taskbar demo
  • 37. WPF 3.5 SP1 Multi-Touch Support Enabling Multi-touch Input Multi-touch Input via Stylus events Implementing Multiple Capture Using Win7 Manipulation and Inertia Processors Windows Multitouch Sample .NET Interop Library http://code.msdn.microsoft.com/WindowsTouch 3.5 SP1 14
  • 38. Windows API Code Pack for .NET Vista and Windows 7 Restart and Recovery Transactions Search Network and power aware Windows 7 Sensor Platform Federated Search Controlling any related services More… 3.5 SP1
  • 39. FundamentalsA Quality-First Release Framework Deployment Application Deployment Text Clarity Layout Rounding / Snapping Graphics Performance Improved Interop UIAutomation – For accessibility and VS Test Tools
  • 40. Framework Deployment .NET 4 is a Side by Side release! Visual Studio 2010 supports multi-targeting (e.g. Silverlight + WPF v3 and 4) Client Profile SKU & Setup Improvements
  • 41. Client Profile SKU Smaller, Faster NET Framework SKU .NET Framework Client: 28mb Setup optimizations for ngen, download, etc. Works across ALL CONFIGURATIONS Brandable deployment experience Developers can customize app deployment experience to match brand Can integrate framework and app installers Tools and documentation for creating these packages Easier application deployment Developers may use deployment bootstrapper to manage the installation of their app and pre-reqs Will install application after the framework and launch it (.msi, .application or .xbap) 3.5 SP1
  • 42. Setup and Size .NET 4 Client Profile is the default target in almost all VS 2010 Client Project Templates (WinForms, WPF, VSTO) Supported on all OS that Full .NET is .NET 4 Full & Client offer big improvements 75%+ size reduction over earlier versions 48 MB Full (x86/x64); 28 MB Client (x86) Both Full and Client Support x86 & x64 Size on media combined x86/x64 package
  • 43. Setup and Client Profile .NET 4 Full & Client Profile Size & Deployment Perf Client x86=~28MB, Client x86/x64=~41MB (similar size to x86 3.5SP1 Client Profile with lots more features ) Full x86=~35MB , Full x86/x64=~48MB (from ~240MB in 3.5Sp1 ) Client Profile is a First-Class Citizen Client Profile Is The De Facto Framework that will be available on Windows Update for desktop PCs Can Be Serviced Independently (of Full Framework) as Standalone & serviceable package (does not require Full Framework) Supported by Visual Studio 2010 in all respects (e.g. targeting, deployment project, etc).
  • 44. Available now at http://photosuru.com Client Profile demo
  • 45. What is ClickOnce? Technology to help deploy, version and update rich clients Supports automatic detection and deployment of application updates Provides bootstrapping capabilities Applications execute in a secure sandbox with support for safe permission elevation
  • 46. ClickOnce Deployment Originally released with .NET Framework 2.0 .NET Framework 3.5 Can move deployment locations Can support third-party publishing and branding Manifest Generating and Editing Tool improved .NET Framework 3.5 SP1 Can publish unsigned applications Better FireFox support Design-time file associations
  • 47. ClickOnce Deployment Continuing Improvements For ClickOnce to enable more seamless app install & update Command-line arguments for CO-deployed apps File associations for CO deployed apps Background auto-updates and custom install User Experience 3.5 SP1
  • 49. Deploying Using ClickOnceOnline-Only Update Scenario Publish.htm Client Workstation MyApp MyApp V1 Domain Publish.htm MyApp.application MyApp_1.0.0.0 HTTP MyApp_1.1.0.0 Check manifest for updates  MyApp.exe.manifest Download updates Web Server
  • 51. Problems Solved by ClickOnce Choice of web, UNC or CD installation On demand feature deployment Automatic application updates Support for application rollback Removal of version conflicts … Administrators can control how applications are granted permissions, safe elevation
  • 52. (Pre-4) WPF Text Rendering
  • 53. WPF 4 <left> vs. GDI <right>
  • 54. Text in WPF 4 APIs In a Nutshell <Page ... <StackPanel TextOptions.TextRenderingMode="ClearType" TextOptions.TextFormattingMode="Display">     <TextBlock Text="This will use Display mode formatting and render with ClearType"/> </StackPanel>   </Page>
  • 55. Text APIs TextFormattingMode Ideal.Maintains high fidelity with their outlines from the font file (default behavior which uses IdealWidth text metrics) Display.Glyph has width of multiple whole pixels and is positioned on whole pixels (optional new behavior which uses CompatibleWidthtext metrics) When To Use Ideal Mode Large Text – As text size increases, Ideal clarity issues dissipate. After ~15pt, Ideal mode is as clear & better spaced than display mode text Transformed Text – If transform is applied to text, Ideal mode should be used. Ideal mode text is designed to be drawn anywhere Zoomed Text – Zooming text is a special case of transformed text. Zoomed text should be implemented by increasing the text size When To Use Display Mode Small Text – Smaller WPF text (<~15pt) can appear more blurry. If so, switching to display mode should help
  • 56. Text APIs TextRenderingMode Aliased (aliased rendering) Grayscale (grayscale antialiasing) ClearType (ClearType always on) Auto (ClearType unless otherwise specified in the system font smoothing options) Comparison of ClearType ,Grayscale, Aliased text using Display TextFormattingMode
  • 58. Layout Rounding WPF Uses DPI-independent Graphics System Objects Fall “Between Pixels” Side Effects: Rendering Artifacts Anti-aliased blurriness Semi-transparent edges Layout Rounding Non-integer Pixel Values Are Rounded To Whole Numbers during Measureand Arrange UseLayoutRounding.Rounds an object’s coordinates on whole pixels
  • 60. Graphics Composition API – give application authors fine grained control over caching rendered elements in video memory An input to a shader effect A brush to fill any arbitrary 2D shape A texture on a 3D model Text Rendering – New and Improved (on all Windows versions) Pixel Shader 3 Support 256  65,000 instructions Extends 3.5 SP1’s ShaderEffect with PS 3 support Tools like Shazzam edit and test Pixel Shader Effects http://www.shazzam-tool.com
  • 61. Cached Composition BitmapCacheenable caching of entire or partial visual tree Avoids Re-rendering Costs per-frame Significant Performance improvements possible Fully Interactive. Remains responsive to user input Respects Dirty Regions and invalidates accordingly Fine-grain control for quality of Cached visual RenderAtScale. Fine-grain knob to set trade-off between re-rendering costs vs. quality, e.g. Processor/memory ++  1, 2, 20X…n scale
  • 63. Cached Composition Usage UIElement.CacheMode = new BitmapCache();   <RectangleCacheMode="BitmapCache"/> <Rectangle> <Rectangle.CacheMode> <BitmapCache EnableClearType="true"RenderAtScale="4"SnapsToDevicePixel="true"/> </Rectangle.CacheMode> </Rectangle>
  • 64. Easing Functions for Animations Basic discrete, linear, spline animations A Dozen Easing Functions for creating fluid animated behaviors Built-in (circular, exponential, elastic, and bouncy animation progress) andExtensible(custom easing functions) Behaviors!
  • 65. Easing Functions for Animations demo
  • 66.
  • 73. Improvements to XAML authoring and workflow
  • 74. VSM
  • 78.
  • 79. WPF Apps @ Microsoft Expression Design and Encoder Deep Zoom Composer Enterprise Library 5.0 Semblio Microsoft Pivot SQL StreamInsight Debugger Microsoft Surface PowerShell ISE Microsoft Test & Lab Manager (for VSTS) Active Directory Administrative Center
  • 80. #Feedback: Performance! #VS2010add reference dialog is much faster! Can I get a AMEN? The developers on the Visual Studio 2010 RC must have had their usual beverages replaced with unicorn tears or something VS2010 RC is fast, I wonder what happens when they hit RTM, it'll be like a cheetah, should be called VS Cheetah!!! Just tried VS2010 RC. One word incredible. Super fast, great build with things I saw in earlier releases fixed. So awesome. #vs2010 is fast like ambulances flying through a school zone at 120 mph being chased by ninjas. and the ninjas are on fire! VS 2010 RC performance is ridiculously faster, can't wait to switch over full time!
  • 81. More #Feedback “Definitely a MASSIVE improvement since VS2010Beta2… So much better than the beta2 that it's hard to know where to start… GREAT WORK GUYS.” “This release works much faster and is more responsive than VS 2008.” “I was concerned about the time that particularly xaml files were taking to load - this is now way better.” “My impression of XAML editor performance seemed better – particularly in the designer.” “I’ve used the latest build over RDP and on my tablet, and I am very happy with the state of VS2010.” “Involving partners and [the] community to take feedback is a good strategy!” “Add References was fast!  :) “IntelliSense seems to be faster/snappier than VS2008 – great job!”
  • 82. More #Feedback @DanWahlin: The performance improvements with Visual Studio 2010 RC compared to previous builds are huge. Really happy with what I'm seeing so far. @peterbromberg: VS2010 RC: I must admit, I am impressed. Major speed and performance improvements. They are obvious immediately! @Nick_Craver: RCperformance is ridiculously faster, can't wait to switch over full time! @Rlz2cool: Just tried VS2010 RC. One word incredible. Super fast, great build with things I saw in earlier releases fixed. So awesome. @ddotterer: Trying out VS2010 RC: Snappier UI, much faster IntelliSense, significant build time reduction, etc. Overall: AWESOME JOB @tomkirbygreen: Oh my goodness, VS2010 RC is much, much faster. Kudos to the VS perf team and everyone else. Uninstalling Visual Studio 2008 :-)
  • 83. WPF 4 Improvements for VS 2010 Text Stack WPF 4 Now Use DirectWrite for much improved text clarity WPF 4 English Text is faster (~10%) compare to WPF 3.5 SP1 Improved JPN MS Gothic Font perf (the VS10 JPN default) UIAutomation Improvements significantly improve Visual Studio performance on tablets and touch-enabled PCs Graphics New API To Allow Editor Line-scroll to be significantly more efficient over RDP and update less area. Improve Reliability On VMs. Added API to allow WPF apps to force SW rendering per process enabling Visual Studio 2010 to use SW rendering
  • 84. WPF 4 Improvements for VS 2010 XAML WPF Designer Template Parsing now ~2x faster MEF VS & Editor Extensions use XAML catalog for better perf WPF Designer and Blend share same XamlDom -> ObjectGraph code MSBuild Uses XAMLto parse build properties files Tree Services Improved Focus Management ExclusiveMenuMode enable better management of keyboard focus between WPF and interop components in MenuMode RestoreFocusMode allow VS full control over focus restoration amongst interop components Performance: Use cached copy of DispatcherSynchronizationContextto improve Editor Scroll scenarios (~25%+ gain)
  • 85. Controls Now in WPF 4 DataGrid, DatePicker VSM Controls Toolkit Chart Controls Themes Ribbon More coming after RTM… More at http://wpf.codeplex.com 3.5 SP1
  • 86.
  • 87.
  • 88. THANK YOU WPF 4 tedhu@microsoft.com
  • 89. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.