W indows P resentation F oundation Next-Generation User Experiences.
Introduction to WPF <ul><li>It is a graphical subsystem for rendering user interfaces in Winforms. </li></ul><ul><li>WPF, previously known as "Avalon", was initially released as part of .NET Framework 3.0. </li></ul><ul><li>WPF is essentially an alternative method for developing Windows based applications. </li></ul>
Introduction to WPF (Continued) <ul><li>Designed to remove dependencies on the aging Graphics Device Interface(GDI) subsystem, WPF is built on DirectX, which provides hardware acceleration and enables modern UI features. e.g.:- Transparency, Gradients and Transforms. </li></ul>
Introduction to WPF (Continued) <ul><li>WPF provides a consistent programming model for building applications and provides a clear separation between the user interface and the business logic. </li></ul>
Technology growth Windows API MFC Microsoft Foundation Class Library Windows Forms Windows Presentation Foundation
Advantages of WPF <ul><li>Effective use of Graphics card. Highly suitable for high end /upcoming computers. </li></ul><ul><li>Built in Animation. </li></ul><ul><li>Supports most of the media/document formats natively. </li></ul><ul><li>XAML(Designer and developer can work independently). </li></ul><ul><li>Silverlight (WPF/e) </li></ul>
Unified Presentation GDI/Windows Forms Flash PDF COM Interop Directx WPF 3D Documents Animation Video Interactive UI controls
Disadvantages of WPF <ul><li>WPF will not run on windows 2000 or lower. </li></ul><ul><li>At the present time there are certain controls available in Windows Forms for which no WPF equivalent exists </li></ul><ul><li>e.g. :- DataGridView and PropertyGrid </li></ul>
WPF and Silverlight <ul><li>Silverlight (formerly known as WPF/e—the "e" stands for "everywhere") is a restricted version of WPF designed to run securely in a browser while still providing a rich user interface. Because of the security restrictions, Silverlight does not provide all the features included in WPF. Some features are missing while others are provided in a restricted way. </li></ul><ul><li>Currently only in beta form, Silverlight supports Firefox and Internet Explorer 7 on Windows and Firefox and Safari on the MAC. </li></ul>
WPF VS WinForms Development <ul><li>WPF has a number of advantages over Windows Forms development which include </li></ul><ul><li>Comprehensive Integration – WPF provides a uniform platform for using video, speech, text, 2D and 3D graphics. </li></ul><ul><li>WPF applications can take advantage of G raphics P rocessing U nits on Graphics cards for smoother graphics. </li></ul>
WPF VS WinForms Development (Continued) <ul><li>WPF allows separation of design work by Designers and functionality by Developers. </li></ul><ul><li>Better GUI </li></ul>
The Future of WinForm Development <ul><li>One of the authors of a leading WPF book, has suggested that there will be no further development by Microsoft for Windows Forms beyond Version 2.0 (released in 2005). </li></ul>
WPF and Windows OS <ul><li>WPF does not explicitly require Windows Vista. </li></ul><ul><li>WPF also will work with Windows XP Service Pack 2 and with Windows Server 2003 SP1 </li></ul><ul><li>IT require the .NET Framework Version 3.0, a free download from Microsoft Web site. </li></ul><ul><li>.NET Framework 3.0 Comes with Windows Vista. So no need to install. </li></ul>
Working with WPF <ul><li>XAML code is principally the textual representation of some visual element – either a graphic object or a user interface object such as a button or a combo box. </li></ul><ul><li>Easy for tools to consume and generate. </li></ul><ul><li>It is new to Developers. </li></ul><ul><li>Under the standard paradigm the User Interface is described in XAML and the underlying functionality is built using C# (or Visual Basic.NET). </li></ul>
Working with WPF (Continued) <Button Width="60"> OK <Button.Background> Blue </Button.Background> </Button> Button btn=new Button(); btn.Content="OK"; btn.Width=60; btn.Background=new SolidColorBrush(Colors.Blue); Dim btn As New Button btn.Content="OK" btn.Width=60 btn.Background=new _SolidColorBrush _(Colors.Blue) OK
Conclusions <ul><li>If you have an existing Windows Forms application or are building a traditional forms-based application and are looking for a mature technology to use with mature tools and component support then Windows Forms is a good fit. </li></ul><ul><li>If you’re wanting to create a new experience for your users that is rich, interactive, sophisticated, or highly custom or branded, WPF is Microsoft’s next-generation platform for your project today. </li></ul>
Conclusions <ul><li>If you’re targeting the web, Silverlight shares the same development model as WPF but is optimized for a lightweight, cross-platform runtime. Investing in either WPF or Silverlight nets you the skills, tools, and assets for both platforms. </li></ul>
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.