Windows Presentation Foundation Clint Edmonson Architect Evangelist [email_address] blog: www.notsotrivial.net twitter: @clinted
What is Windows Presentation Foundation?
“ WPF”
Why Was WPF Created?
UX
Design is Inevitable “ Questions about whether design is necessary or affordable are quite beside the point: design is inevitable . The alternative to good design is bad design , not no design at all.” Douglas Martin designer
A Metaphor
“ It just works!”
Another Metaphor
How Does WPF Solve This Problem?
Developers and designers exist in two different time-space continuums
Designer/developer experience
designers & developers:
Speak the same language
designers design
designers & developers:
Speak different languages
developers add business logic The new way for designers and developers to work together designer developer
Declarative & Programming Development
Easily toolable, declarative markup
Code and content are separate
Can be rendered in the browser / standalone application
<Button Width="100"> OK <Button.Background> LightBlue </Button.Background> </Button> XAML Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100; C# Dim b1 As New Button b1.Content = "OK" b1.Background = New _ SolidColorBrush(Colors.LightBlue) b1.Width = 100 VB.NET
Features Of WPF?
- Rich, mature control set - TextBox, Checkbox, ComboBox, Border, MediaElement - Animation, triggers, timelines - Styles and embedded resources - Layout panels - Databinding - 2D, 3D and imaging - ClearType and antialiasing - Interoperability - Document services
Property Engine Input / Eventing System .NET Framework 2.0 Desktop Windows Manager Media Integration Layer DirectX Windows Vista Display Driver (LDDM) Windows Media Foundation Composition Engine Print Spooler Managed Unmanaged Application Services Deployment Services Databinding USER INTERFACE SERVICES XAML Accessibility Property System Input & Eventing BASE SERVICES DOCUMENT SERVICES Packaging Services XPS Documents Animation 2D 3D Audio Imaging Text Video Effects Composition Engine MEDIA INTEGRATION LAYER Controls Layout Windows Presentation Foundation XPS Viewer
When Should I Use WPF?
You should be in a rich-client application environment when…
You want your client to be front and center with your customers
You want to take advantage of local system resources
You’re building a ‘widget’ application
You need to integrate closely with the desktop
You need complete control over the entire user interface or brand
What are my deployment options?
Stand-alone installation
Uses standard install tools
Installed locally to Program Files
Available to all users on the machine
Full access to local computer and network resources
Windows OS only
XML Browser App (XBAP)
Install and run apps by clicking a URI
WPF application docked inside the browser window
Saved to isolated storage on local machine
Must be signed
Always auto updated
Must be run while online
Windows OS only
.NET 3.0 and up
Full framework available (depending on trust levels)
Firefox support added in .NET 3.5 & Firefox 3
Click-Once
Install and run apps by clicking a URI
May be installed locally or run from web every time
Installed on a per-user basis
Must be signed
Saved to isolated storage on local machine
Supports automatic updating
Can run when offline
Windows OS only
.NET 2.0 and up
Full framework available (depending on trust levels)
Firefox support added in .NET 3.5 & Firefox 3
Who’s Using WPF?
How Do I Build WPF Applications?
Demo: A Walk Through WPF Development in Expression Blend 2 and Visual Studio 2008
Whether you are designing rich standards-based websites, ultimate experiences on the desktop, or managing digital assets and content, Expression professional design tools give you the flexibility and freedom to bring your vision to reality.
Expression Blend
Your Sandbox Just Got Bigger
Design stunning Windows applications that blend the best of the web and desktop
Collaborate with developers using Visual Studio for a new level of designer-developer productivity
Art, Meet Science
Mix a full spectrum of design elements including vector art, pixel images, high quality text, video, and real 3D content
Full toolbox of advanced controls and containers for building compelling user interfaces
Go Beyond the Browser
Harness the full power of Windows Vista, from desktop to the browser
Deliver the ultimate user experiences with rich graphics, animation, and interactive UI
Expression Design
Expand Your Portfolio
Design UI elements for Windows applications
The perfect companion for Expression Blend
Designed for Design
Modern UI built from the ground up with the professional designer in mind
Powerful vector drawing tools and non-destructive effects
Your Vision, Uncompromised
Ensure design integrity thanks to end-to-end XAML workflow
Export your visual designs as XAML code, ready to use in interface design and control skinning
Expression Media
Tame Your Media
Manage all of your media assets in one place with extensive annotations, metadata, search, and browsing (even while offline)
Support for over 100 different media formats and file types, including images, fonts, and video
Your Workflow, Enhanced
Rename, convert, tag, and batch process files quickly, and use powerful search to find and retrieve the files you need
Edit images and keep track of changes with version control and folder watching
Presentation is Everything
Export files to multiple formats, build slide shows and videos, or create professional Web galleries
Includes Expression Media Encoder , for conversion, enhancement, and compression of rich Web video
Expression Media Encoder
Tame your Video Compression Workflow
Batch import WMV, AVI, MPEG, QT, and more via plug-ins.
Integrate easily into existing workfow
Powerful command-line encoder for application and server-based integration
Enhance Effortlessly
Trim, crop, resize, add bumpers, markers, overlays, and more to your video
Professional effects and alpha compositing support
Extensible metadata management for asset tracking
Publish for the Web and beyond
Stunning quality with Emmy® Award winning Windows Media & SMPTE VC-1 compression
Customizable publishing profiles for desktop, Web, and devices.
Template-based “WPF/E” publishing for cross-platform, cross-browser playback
a feature of Expression Media
Where Can I Learn More?
www.microsoft.com/ design www.microsoft.com/ expression Where to learn more
WindowsClient.net/GetStarted Where to learn more
Nibblestutorials.net Where to learn more
www.visitmix.com
Windows Presentation Foundation Clint Edmonson Architect Evangelist [email_address] blog: www.notsotrivial.net twitter: @clinted
0 comments
Post a comment