Google
 

Wednesday, June 3, 2009

Windows Presentation Foundation (WPF)

The Windows Presentation Foundation (WPF), as its name implies, is the new
Microsoft standard for creating user interfaces. WPF is a consolidation of
previously used presentation technologies including Windows Forms, GDI+, Windows
Media Player, and DirectX. WPF provides the following benefits:


  • A common platform and environment for developing cutting edge user
    interfaces that combines all previously used Microsoft presentation
    technologies.
    WPF is capable of interacting with all of the previous
    technologies to aid in progressive application upgrades. All Microsoft
    presentation development going forward should use WPF or the subset of WPF,
    Silverlight.
  • The ability for developers and designers to work together,
    simultaneously on projects
    - a result of the proper division of markup from
    code and the correct usage of tools.
  • A common and standardized technology that can be used for both Windows
    and Web applications.
    WPF offers the ability to create standalone WPF
    applications which are analogous to Windows Forms applications and to create
    XAML Browser Applications (XBAPs) - the same WPF applications hosted in a Web
    browser and subject to more stringent security settings.

The features included in the WPF standard are:


  • A complete application framework integrated into the .NET Framework 3.0
  • Layout control and user interface controls
  • Complete support for styles and templates
  • Advanced text formatting and display capabilities (through ClearType) that
    greatly improve text readability
  • Support for both fixed layout and flow layout documents and the introduction
    of a brand new fixed document format standard known as the XML Paper Specification (XPS) document standard
  • Easy display and integration of all image formats, video, audio, 2D
    graphics, 3D graphics as well as graphics transformations and effects and
    animations
  • Advanced data binding capabilities

What's New in the .NET Framework

The .NET Framework can also be fully extended by developers to create custom
classes and types. The functionality of the .NET Framework spans the server, the
workstation, and the Web. The four primary additions to the .NET Framework as of
version 3.0 are:


  1. Windows Presentation Foundation (WPF)
  2. Windows Communication Foundation (WCF)
  3. Windows Workflow Foundation (WF)
  4. CardSpace

Windows Presentation Foundation (WPF)


WPF is used to develop elaborate user interfaces like those that adorn
Windows Vista and managed advanced media streaming and integration. WPF is the a
complete revamp of Windows Forms so that user interface, graphic, and media
development is now designed around the .NET Framework.


Windows Communication Foundation (WCF)


WCF encompasses the ASP.NET Web Services and .NET remoting functionality that
was contained in the .NET Framework 2.0 as well as new communication
technologies.


Windows Workflow Foundation (WF)


WF is used to model complex workflow processes.


CardSpace


CardSpace is the embodiment of new security and user authorization
functionality.

What is Silverlight?

Silverlight is a new cross-browser, cross-platform
implementation of the .NET Framework for building and delivering the next
generation of media experiences and Rich Interactive Applications(RIA) for the
web. It runs in all popular browsers, including Microsoft Internet Explorer,
Mozilla Firefox, Apple Safari, Opera. The plugin required to run Silverlight is
very small in size hence gets installed very quickly.


It is combination of different technolgoies into a single
development platform that allows you to select tools and the programming
language you want to use. Silverlight integrates seamlessly with your existing
Javascript and ASP.NET AJAX code to complement functionality which you have
already created.


Silverlight aims to compete with Adobe Flash and the
presentation components of Ajax. It also competes with Sun Microsystems' JavaFX,
which was launched a few days after Silverlight.


Currently there are 2 major versions of Silverlight:


Silverlight 1.0 and Silverlight 2.0( previously referred to
as version 1.1).


Main features of Silverlight 2.0 :


  1. A built-in CLR engine that delivers a super high performance
    execution environment for the browser. Silverlight uses the same core CLR engine
    that we ship with the full .NET Framework.
  2. Silverlight includes a rich framework library of built-in
    classes that you can use to develop browser-based applications.
  3. Silverlight includes support for a WPF UI programming model.
    The Silverlight 1.1 Alpha enables you to program your UI with managed code/event
    handlers, and supports the ability to define and use encapsulated UI controls.
  4. Silverlight provides a managed HTML DOM API that enables you
    to program the HTML of a browser using any .NET language.
  5. Silverlight doesn't require ASP.NET to be used on the
    backend web-server (meaning you could use Silverlight with with PHP on Linux if
    you wanted to).
  6. Silverlight 2 includes Deep Zoom, a technology derived from
    Microsoft Live Labs Seadragon. It allows users to zoom into, or out of, an image
    (or a collage of images), with smooth transitions, using the mouse wheel. The
    images can scale from 2 or 3 megapixels in resolution into the gigapixel range,
    but the user need not wait for it to be downloaded entirely; rather, Silverlight
    downloads only the parts in view, optimized for the zoom level being viewed.
  7. Silverlight 2 also allows limited filesystem access to
    Silverlight applications. It can use the operating system's native file dialog
    box to browse to any file (to which the user has access).