a first look at windows presentation foundation everywhere (wpf/e): a cross …

17
1 A First Look At A First Look At Windows Presentation Windows Presentation Foundation Everywhere Foundation Everywhere ("WPF/E") ("WPF/E") Joe Stegman Joe Stegman Lead Program Manager Lead Program Manager Microsoft Corporation Microsoft Corporation NGW036 NGW036

Upload: goodfriday

Post on 19-May-2015

796 views

Category:

Technology


0 download

DESCRIPTION

WPF/E is a cross platform runtime enabling a subset of Windows Presentation Foundation (WPF) XAML to reach beyond the latest Windows PC platforms. With WPF/E you'll be able to build rich, interactive experiences that run in major Web browsers on major platforms as well as on mobile devices. The combination of WPF/E and WPF will enable designers and developers to have a consistent development experience across smart clients, Web-based applications, and mobile devices. Join us to discuss the WPF/E feature set, targeted platforms and browsers, the developer experience, and to see a preview of the technology.

TRANSCRIPT

Page 1: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

1

A First Look At Windows A First Look At Windows Presentation Foundation Presentation Foundation Everywhere ("WPF/E")Everywhere ("WPF/E")

Joe StegmanJoe StegmanLead Program ManagerLead Program ManagerMicrosoft CorporationMicrosoft Corporation

NGW036NGW036

Page 2: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

2

Session AgendaSession Agenda

A little talkingA little talking

DemosDemos

A bit more talkingA bit more talking

More demosMore demos

A few more wordsA few more words

Q&AQ&A

Page 3: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

3

Windows Presentation Foundation/Everywhere Windows Presentation Foundation/Everywhere (“WPF/E”)(“WPF/E”)

Subset of WPF focused on interactive Subset of WPF focused on interactive contentcontent

Great integration with web Great integration with web Cross platform and cross browserCross platform and cross browserSupports JavaScript and C#/VB.NetSupports JavaScript and C#/VB.Net

XAML is the enabling technologyXAML is the enabling technology

Available SoonAvailable SoonCustomer preview in Q3 2006Customer preview in Q3 2006Web release in first half of 2007Web release in first half of 2007Device release in second half of 2007Device release in second half of 2007

Page 4: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

4

"WPF/E" Architecture"WPF/E" ArchitectureBrowser Application / OS

ContentPackage XAML

ProgrammingModel

“WPF/E” Runtime

Plug-insPlug-ins Platform SpecificHosting ModelPlatform SpecificHosting Model

JavaScript

C# / VB.NET

Native API

XML - DataFonts Video/AudioImages

Native “WPF/E” APINative “WPF/E” API

UI & Rendering CoreUI & Rendering Core

Platform Abstraction LayerPlatform Abstraction Layer

Page 5: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

5

"WPF/E" Demo"WPF/E" Demo

Page 6: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

6

““WPF/E” Web PlatformsWPF/E” Web Platforms

Operating SystemsOperating SystemsWin XP, Win2K, Win2K3, VistaWin XP, Win2K, Win2K3, Vista

Considering Win9XConsidering Win9X

Mac OS X 10.*Mac OS X 10.*

Considering Linux and SolarisConsidering Linux and Solaris

BrowsersBrowsersIE 5.5+IE 5.5+

Mozilla 1+, Firefox 1+Mozilla 1+, Firefox 1+

Opera 7+Opera 7+

Safari 1+Safari 1+

Page 7: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

7

"WPF/E" Features"WPF/E" Features

Core Runtime

Media Integration LayerMedia Integration Layer

AudioAudio VideoVideo

Composition EngineComposition Engine

Base ServicesBase Services

XML/XAML ParserXML/XAML Parser

AccessibilityAccessibility

Property SystemProperty System

Input and EventingInput and Eventing

TextText

ImagingImaging

2D2D

Animation

Animation

Other ServicesOther Services

Core ControlsCore Controls

Basic LayoutBasic Layout

Container Controls

Container Controls

Page 8: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

8

Increased Development Increased Development ProductivityProductivity

Integrated Platform for UI, Text, and MediaIntegrated Platform for UI, Text, and Media

Declarative Programming (XAML)Declarative Programming (XAML)

Bringing Designers Into the Application Bringing Designers Into the Application Development ProcessDevelopment Process

Tools for Designers: Microsoft ExpressionTools for Designers: Microsoft Expression

Tools for Developers: Visual StudioTools for Developers: Visual Studio

3rd Party Support: Mobiform, Electric Rain3rd Party Support: Mobiform, Electric Rain

Page 9: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

9

DesignerDesigner

Emotional Emotional ConnectionConnection

Look, behavior, data Look, behavior, data visualization, usability, brand visualization, usability, brand

impactimpact

DeveloperDeveloper

Functional Functional CapabilitiesCapabilitiesDeployment, function, data Deployment, function, data connection and integrity, IT connection and integrity, IT process, securityprocess, security

C++C#

VB.NET

PaperJPG / TIFF

MOV / WMV PSDPPT

XAML

Unifying The Designer/Developer ProcessUnifying The Designer/Developer Process

Page 10: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

10

"WPF/E" Features Demo"WPF/E" Features Demo

Page 11: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

11

"WPF/E" Web Programming "WPF/E" Web Programming ModelModel

XAML and JavaScript in a web pageXAML and JavaScript in a web pageAccess "WPF/E" via JavaScriptAccess "WPF/E" via JavaScript

Support inline and external XAML/scriptSupport inline and external XAML/script

XAML and .NET Framework codeXAML and .NET Framework code"WPF/E" hosts an x-platform .NET runtime"WPF/E" hosts an x-platform .NET runtime

Code (C#/VB.NET) is compiled into an intermediate Code (C#/VB.NET) is compiled into an intermediate language (IL)language (IL)

IL is run in a secure and “managed” environmentIL is run in a secure and “managed” environment

"WPF/E" loads external package containing IL and "WPF/E" loads external package containing IL and XAMLXAML

Page 12: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

12

External PackageExternal Package

<html><html> <<bodybody>>

<object<object/embed /embed id=id=“wpfehost” size=“…”>“wpfehost” size=“…”><param name=“source” value=“<param name=“source” value=“default.wpfedefault.wpfe”/>”/><param name=“startuppage” <param name=“startuppage”

value=“value=“default.xamldefault.xaml”/>”/></…></…>

<</body/body>></html></html>

default.wpfedefault.wpfe contains: contains:default.xaml default.xaml (compressed)(compressed)It may also contain:It may also contain:

Other XAML filesOther XAML filesXAML and script filesXAML and script filesResources (images, media, fonts, others)Resources (images, media, fonts, others)

Page 13: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

13

.NET Programming Model.NET Programming Model

Web page plug-in loads external packageWeb page plug-in loads external package

Web Page:Web Page:<html><html>

<!-- … --><!-- … --> <object<object/embed/embed source=“source=“sample.wpfesample.wpfe”>…</…>”>…</…></html></html>

sample.wpfesample.wpfe::sample.xamlsample.xamlsample.ilsample.il

External package contains XAML and ILExternal package contains XAML and ILThe container is loaded into the "WPF/E" plug-inThe container is loaded into the "WPF/E" plug-in

Page 14: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

14

““Managed Code” Managed Code” Programming ModelProgramming Modelsample.xaml:

<Page Name=“p1”><Button Name=“b1”>Turn Red</Button>

</Page>

sample.cs (becomes sample.il):

b1.Click += new EventHandler(Button1_Click);

void Button1_Click(object sender, EventArgs e) {p1.Background = Brushes.Red;

}

Page 15: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

15

"WPF/E" Controls"WPF/E" Controls

Basic controlsBasic controlsInput, Button, CheckBox, RadioButtonInput, Button, CheckBox, RadioButton

Canvas, Grid and StackCanvas, Grid and Stack

Rich styles and template supportRich styles and template support

Page 16: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

16

Questions And Feedback…Questions And Feedback…

Page 17: A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …

17

© 2006 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.