Programming Next Generation User Interfaces Using by sds67525

VIEWS: 5 PAGES: 21

									Programming Next Generation User Interfaces
Using Windows Presentation Foundation




Marc Schweigert, Developer Evangelist
Federal Developer & Platform Evangelism
http://blogs.msdn.com/federaldev
Platform   Technologies




Technologies for delivering next generation UX
Platform   WinFX




            New managed API for Microsoft Windows

            Superset of the .NET Framework. New functionalities,
            optimized for Windows Vista

            Win32 apps can be incorporated into the WinFX model

            WinFX will be available for Windows XP by installing the
            WinFX Runtime Components
PRESENTATION                                      DATA                                                     COMMUNICATION

Presentation Framework    ASP.NET                 ADO.NET                Language Integrated Query         Windows Communications Foundation    Windows Workflow Foundation
System.Windows (3.0)      System.Web (2.0)        System.Data             System.Query (F)                 System.ServiceModel (3.0)            System.Workflow (3.0)
         Annotations                 Compila               Commo          System.Data.DLinq (F)                                Channels         System.Workflow.Activities (3.0)
         Automation                  tion                  n              System.Xml.XLinq (F)                                 Configuration            Rules
         Controls                    Configur              Odbc           System.Expressions (F)                               Diagnostics      System.Workflow.ComponentModel (3.0)
         Data                        ation                 OleDb                                                               Integration              Complier
         Documents                   Handler               OracleCl       Windows File System                                  QueueHelper              Desinger
                                     s                     ient           System.Storage (F)                          System.ServiceModel.Securit       Serializaztion
         Ink
                                     Hosting               Sql                      Core                              y(3.0)                    System.Workflow.Runtime (3.0)
         Interop
                                     Mail                  SqlClien
                                                  ASP.NET Data Management           Audio                                      Protocols                Hosting
         Navigation
                                     Manage                t
                                                  System.Web                        Calendar                                   Tokens                   Messaging
         Resources
                                     ment                                           Contacts               Network Class Library
         Serialization                                     Caching
                                     Security                                       Documents              System.Net                           ASMX Web Services
         Shapes           Printing Subsystem               Profile
                                     UI (2.0)                                       Image                                          Cache        System.Web.Services
         Threading        System.Printing (3.0)            SessionState
                                     Util                                           Media                                          Mail (2.0)
System.Windows.Media (3.0)                                                                                                                      Identity Management
                           GDI+                                                     Messages                                       Network
         3D                                       XML Data                                                                                      Microsoft.InfoCards (3.0)
                           System.Drawing         System.Xml                        Rules                                          Informatio
         Animation                                                                                                                 n (2.0)
                                   Design                  Schema                   Sync
         Imaging                                                                                                                   Security     MSMQ
                                   Drawing2                Serializ                 Video
Windows Forms                      D                                                                       .NET Remoting           (2.0)        System.Messaging
                                                           ation          XPS Documents                                    Sockets
System.Windows.Forms (2.0)         Printing                                                                System.Runtime.Remoting
                                                           XPath          System.Windows.Xps (3.0)                                              Directory Services
          Design
                                                           Xsl            System.IO.Packaging (3.0)                                             System.DirectoryServices
          Layout                                                                                           .NET Remoting
          VisualStyles                                                                                     System.Runtime.Remoting
                                                                         Speech Integration
                                                                         System.Speech (3.0)
                                                                                 Recognition
                                                                                 Synthesis

 FUNDAMENTALS

 BASE CLASS
 LIBRARIES
System                   System.Text                    System.Tex                 System.T Managed Add-In             System.Runtime
                                                        t                          ext       Framework                                      Compil
System.CodeDom        System.ServiceProcess                                                A System.Addins (F)                              erServi
                                                System.Reflection G                        c
System.ComponentModel System.Threading                            e                                              Con                        ces
                                                                  n                        c                     tact                       Constr
System.Diagonostics   System.Timers                     Email     er                       e Microsoft.Build (2.0)
                                                System.Configuration                                                                        ainedE
                                                                  ic                       s                                                xecutio
System.IO (2.0)       System.EnterpriseServices                                            s
                                                                  (2                                                                        n(2.0)
System.Resrouces      System.Transactions (2.0)                   .0                       C
                                                                  )                        o                          “ClickOnce” DeploymentInterop
                                                                                                                                            Service
                                                                                           n                          System.Deployoment (2.0)
                                                                                                                                            s             KEY
                                                                                           t                                                Hosting
                                                                                           r                                                           (2.0) (3.0)       - New
                                                                                           o                                                Serializ
                                                                                           l                                                ation                          (2.0)
WINDOWS VISTA                                                                                                                               Version                      - Substantially Improved
                                                                                           (                                                ing
                                                                                              2                                                                          - Windows Presentation
                                                                                              .                                                        Foundation
                                                                                              0
                                                                                              )                                                                          (formerly codenamed
Platform   Windows Presentation Foundation




                Unified content and application model

                Better designer / developer collaboration

                Exciting user interfaces

                Higher fidelity information

                Increased end user satisfaction
Integrated Vector-based
Graphics and Composition
• Modern graphics capabilities
 –   2D and 3D graphics
 –   Image effects and codec
 –   Hardware accelerated sub-pixel ClearType
 –   Video and audio

• Revolutionizing the Graphics and Media pipeline
 – Across the display, audio, printing, and remoting sub-systems
 – Direct3D-based hardware acceleration throughout the rendering pipeline

• Anticipates future hardware technologies
 – Resolution independence
 – Double floating point precision
 – Deeper color pipeline
Platform       Windows Presentation Foundation




 Document Services           User Interface Services

     XPS Documents                Application Services           Controls
                                                                                   Databinding
   Packaging Services             Deployment Services             Layout



 Media Integration Layer                                                   Base Services

    Imaging             2D                               Audio                     XAML
                                         Text
     Effects            3D                               Video                  Accessibility

                             Animation                                         Input & Eventing

                        Composition Engine                                     Property System
Platform   WPF       Microsoft Max
           Example
Platform   WPF       Healthcare Center
           Example
Platform   WPF       Northface
           Example
11
Developer & Designer Collaboration   The process today
                                     Unifying the process




     Designer                                   Developer
Developer & Designer Collaboration           About XAML




                   XML based (text)

                   Extensible Application Markup Language

                   Declarative

                   UI Descriptive

                   Access the WPF Platform

                   Open specification
   XAML
    • Markup for Windows
      – Build applications in simple declarative statements
      – Can be used for any CLR object hierarchy

    • Code and content are separate
      – Streamline collaboration between designers and developers

    • Easy for tools to consume and generate




<Button Width="100"> OK        Button b1 = new Button();            Dim b1 As New Button
 <Button.Background>           b1.Content = "OK";                   b1.Content = "OK"
  LightBlue                    b1.Background = new                  b1.Background = New _
 </Button.Background>          SolidColorBrush(Colors.LightBlue);     SolidColorBrush(Colors.LightBlue)
</Button>                      b1.Width = 100;                      b1.Width = 100
Demo

       15
     Windows Presentation Foundation/Everywhere
     (“WPF/E”)
     • Subset of WPF focused on interactive content

     • Great integration with web
      – Cross platform and cross browser
      – Supports JavaScript and C#/VB.Net

     • XAML is the enabling technology

     • Available Soon
      – Customer preview in Q3 2006
      – Web release in first half of 2007
      – Device release in second half of 2007
16
 "WPF/E" Architecture
                Browser                            Application / OS
     Content              Images    Fonts     Video/Audio XML - Data
     Package                                 XAML

     Programming          JavaScript                    Native API
     Model
                       C# / VB.NET

     Plug-ins                               Platform Specific
                                            Hosting Model

     “WPF/E” Runtime
                              Native “WPF/E” API

                             UI & Rendering Core

                           Platform Abstraction Layer


17
     “WPF/E” Web Platforms

     • Operating Systems
       – Win XP, Win2K, Win2K3, Vista
         > Considering Win9X
       – Mac OS X 10.*
       – Considering Linux and Solaris

     • Browsers
       – IE 5.5+
       – Mozilla 1+, Firefox 1+
       – Opera 7+
       – Safari 1+




18
 "WPF/E" Features



                           Core Runtime
       Base Services      Media Integration Layer     Other Services

     XML/XAML Parser        2D            Text        Core Controls

       Accessibility       Audio          Video     Container Controls

     Input and Eventing   Imaging      Animation      Basic Layout

      Property System      Composition Engine




19
     "WPF/E" Web Programming Model



     • XAML and JavaScript in a web page
      – Access "WPF/E" via JavaScript
      – Support inline and external XAML/script

     • XAML and .NET Framework code
      – "WPF/E" hosts an x-platform .NET runtime
       >Code (C#/VB.NET) is compiled into an intermediate language (IL)
       >IL is run in a secure and “managed” environment
      – "WPF/E" loads external package containing IL and XAML



20
Questions?

								
To top