65.9K
CodeProject is changing. Read more.
Home

Microsoft WPF - Silverlight Comparision

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.88/5 (13 votes)

Nov 11, 2011

CPOL

3 min read

viewsIcon

33924

Microsoft WPF vs. Silverlight, a comparision

  Microsoft WPF - Silverlight Comparision  
Features/ Support WPF Silverlight
Platform Support WPF is a Windows desktop technology for developing Windows application in the .NET framework Silverlight is a web technology, that is fully supported by a browser plugin on both Windows and MAC (in a similar fashion to Flash). There is also a plugin for running Silverlight on Linux (Moonlight).
Architecture Presentation Core --> .NET Framework --> CLR Presentation Core -->.NET for Silverlight --> CLR for Silverlight --> Browser Host
Deployment WPF applications can be deployed as a standalone application, ClickOnce application, or a XAML Browser application. BAML is a binary form of the XAML in a WPF application Silverlight applications are hosted within a web server and a web page. To minimize client download size, Silverlight uses an XAP archive. A XAP archive is a zip-compressed archive of the Silverlight application, plus a manifest file describing the content.
XAML processing WPF has its own XAML parser XAML parser that is part of the Silverlight core install
Xml/Object Data Provider Supports the XmlDataProvider and ObjectDataProvider Supports the XmlDataProvider but not the ObjectDataProvider
Access to .NET Network Stack WPF has access to the full .NET networking stack and can make any type of call Silverlight is a browser-based technology that has access to a subset of the .NET Framework (called the CoreCLR). Can only make asynchronous network calls
Cryptography Namespaces WPF has access to 107 cryptography classes and supports the full range of algorithms in the .NET Framework. Cryptography (Silverlight has 20 classes in the namespace. Silverlight supports only 4 hashing algorithms and the AES encryption protocol
Deep Zoom No Yes
Data Binding Supports MultiBinding Doesn't support MultiBinding
Triggers Yes Limited support
Commanding Yes No
Freezable objects Yes No (Flow Document are designed to optimize viewing and readability)
3D Drawing Yes 3D Support is limited
Flow Document support Yes No
Dynamic resources Yes No
Multitouch API WPF has element-level support for multitouch events on its UIElement class. Silverlight 4 client as a whole is registered for touch messages, and the multitouch events are handled through a client-level Touch service class.
Out-of-Browser Support WPF has an XBAP deployment model that runs in a browser Silverlight uses a different deployment technique where an application can be configured to run outside the browser after being installed from a host Web page
Screen Coordinate System WPF has a theoretically unbounded coordinate system Silverlight has a bounded coordinate system
Measurements WPF supports a measurement system that by default is based on Device Independent Pixel (DIP) units Silverlight supports a measurement system that is always based on pixel units.
URL based navigation No Yes
Clipboard Anything serializable Text only
Controls/Elements All visually rendering elements derive from the Visual base class Elements derive from Control
External Device access Anything with drivers, COM, Win32 or Communication Protocol Webcam, Camera, Microphone and device with COM API or compatible communication protocol
File Access Unlimited Limited
WPF Specific Functionality Desktop Functionality (Printing, XPS Documents, Speech, InterOp) XAML (Styles ) User Interface (3D Graphics, Themes, Skins, Image Manipulation, Page-Based Navigation, Input Gestures) General Functionality (Freezable Objects, Data Providers, Validation, Dynamic Resources, Code Access Security )  
Silverlight Specific Functionality   Web Functionality (Browser InterOp) Media (Traditional Streaming, Progressive Download, Smooth Streaming, Timeline Markers ) Deep Zoom