by mheydt
11.
March 2008 17:08
>
I’m starting to work on a presentation to people where I work about the differences in WPF versus WinForms and ASP.NET. I quick summary yields these which I’ll elaborate on later:
- XAML to declaratively define interfaces and code
- GDI+ Replaced with DirectX
- Vector graphics model based on Direct3D
- Floating point logical pixel system and 32-bit ARGB colors
- All layout is based upon device independent pixel model and units can be spcified in px (1/96/in), in, cm and pt (resolution independence).
- Animation as a first class programming concept
- Attached Properties
- Dependency Properties
- Visual and Logical Trees
- Dynamic 2 Pass layout model
- Layout models like the web but with much more flexibility and control
- Data and Control Templating
- Data binding
- Event routing / bubbling
- Threading/Dispatch model
- Navigation
- XBAP vs EXE vs Navigation models of applications
- Commands
- Rendering Transforms
- Resources
- Styles, Templates, Skins and Themes
- Visuals and shapes
- 3D
- UI Techniques (Carousels, CoverFlow, Virtualization)
Also worthy of noting are:
- Reference declarations in XAML
- Default models of control layout in Grids and Canvases
With .NET 3.5, the following features are new to WPF:
- Firefox support for XBAPs
- Databinding support for LINQ and IDataErrorInfo
- Ability to place interactive controls in a RichTextBox
- Support for 2-D element on 3-D surfaces
- Add-in model for third-party components requiring a limited security context.
Pains in WPF:
- Lack of controls
- Renaming control classes
697814a3-7f21-490f-9f45-ee439853f8f3|0|.0
Tags:
.Net | WPF