slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Choosing the Right Presentation Technology : Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NE PowerPoint Presentation
Download Presentation
Choosing the Right Presentation Technology : Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NE

Loading in 2 Seconds...

play fullscreen
1 / 34

Choosing the Right Presentation Technology : Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NE - PowerPoint PPT Presentation


  • 273 Views
  • Uploaded on

Choosing the Right Presentation Technology : Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NET, IE, and More. PRS200 Michael Wallent General Manager Windows Client Platform and Documents Microsoft Corporation. Universe of Experiences.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Choosing the Right Presentation Technology : Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NE' - patch


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Choosing the Right Presentation Technology:Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NET, IE, and More

PRS200

Michael Wallent

General Manager

Windows Client Platform and Documents

Microsoft Corporation

universe of experiences
Universe of Experiences

Vision: Create a consistent family of platforms and tools to help developers meet their customer needs through creation of client experiences

Build platforms and tools that help developers radically improve the quality of the experience for their users

user experience recent past
Web

1995 - HTML

Sacrificed UX for portability, connectivity and simplicity

1997 – DHTML

Interactivity for the web; not heavily used until recently

2005 – Increasing Interactivity

The “rediscovery” of DHTML

Windows

1994 – Win32

New level of functionality for installed applications

Many libraries on top including MFC, ATL, VB

1996 – DirectX

Gaming platform for Windows

2002 – Windows Forms

Developer productivity for Win32

User Experience: Recent Past
  • 2006 and Beyond
    • Rising demand for richness
developer conundrum
Developer Conundrum
  • Customers want better experiences
  • Limited By
    • Need For Reach
      • Do I control the environment? Do I need to target everyone and every device?
    • Developer Capability
      • Can my developers build what my designers envision, or do I even know what’s best?
    • Inertia
      • Systems are the way they are. Users are used to their patterns of today
      • 10% better doesn’t cut it

Better Experiences Lead to

Differentiation and Customer Value

user experience matters productivity software
User Experience Matters Productivity Software

MSN Hotmail

(today)

MSN Hotmail

(beta)

Office: Outlook

rising expectations for user experience

ASP.NET “Atlas”

Windows Presentation Foundation

WPF/E

DHTML

Win32

Direct 3D

Windows Forms

Rising Expectations for User Experience
presentation technologies

Win32

(User, GDI)

Direct 3D

Windows Forms

WPF

Presentation Technologies
presentation technologies1

HTML

DHTML

ASP.NET “Atlas”

WPF/E

Presentation Technologies
asp net atlas1
ASP.NET “Atlas”

A FRAMEWORK FOR BUILDING RICHER, MORE INTERACTIVE,

MORE PERSONALIZED WEB EXPERIENCES

  • Increased productivity
    • Fewer concepts, fewer lines of code
    • Application and UI building blocks for common scenarios
  • Easier to author, debug, and maintain
    • Clean separation of content, style, behavior, and code
    • Well integrated with design and development tools
  • Seamlessly integrated application model
    • Works with ASP.NET pages and server controls
    • Allows access to ASP.NET-hosted web services and components
  • Works everywhere – cross-browser, standards based

PRS312 ASP.NET: Future Directions for Developing Rich Web Applications with Atlas (Part 1)

atlas architecture

“Atlas” Client Script Library

Controls, Components

ASP.NET “Atlas” Server Extensions

App Services Bridge

Component Model and UI Framework

“Atlas”

Server Controls

Web Services Bridge

Base Class Library

Script Core

ASP.NET 2.0

Page Framework,

Server Controls

Application Services

Browser Compatibility

“Atlas” Architecture

HTML, Script,

“Atlas”

Markup

“Atlas”

Service

Proxies

“Atlas”-enabled

ASP.NET Pages

Web Services

(ASMX or WCF)

“Atlas” Client Framework and Services

“Atlas” Server Framework

atlas client controls
“Atlas” Client Controls
  • Automatic data bindings between components
  • ListView, ItemView controls for rich templated rendering
  • DataSource component
    • Integrated with data-based web services
    • Supports batched updates
  • Build programmatically or declaratively

<input id="Text1" type="text" />

<script type="text/xml-script">

<page xmlns:script="http://schemas.microsoft.com/xml-script/2005">

<components>

<textBox id="Text1" targetElement="Text1">

<behaviors>

<autoComplete

serviceURL=“myService.asmx" serviceMethod="GetCompletionList" minimumPrefixLength="1" completionList="Text1__autocomplete" />

</behaviors>

</textBox>

</components>

</page>

</script>

atlas networking
“Atlas” Networking
  • Client networking stack layered on XMLHTTP
    • WebRequest, WebResponse, MethodRequest classes
  • ASP.NET “Atlas” Web Services Bridge
    • Access to ASP.NET-hosted and serviced components
      • ASMX and WCF services, .NET objects, ASP.NET page-level services
    • Automatic client proxy generation

<script src=“MyService.asmx/js”></script>

<script>

function onLoad() {

MyService.GetItemsByName(Text1.value, onComplete); }

function onComplete(results) {

$(‘ResultsDataSource’).set_data(results);

}

</script>

atlas server controls
“Atlas” Server Controls
  • Wrap “Atlas” UI, client and server-side behavior
  • Extends ASP.NET control model to “Atlas”
    • Server-side programmability for
      • “Atlas” declarative script - *.aspx.script
      • Client-side bindings, actions, templates
  • ASP.NET core controls will take advantage of “Atlas”

<atlas:TextBox

ID=“Text1”

AutoCompletionServiceUrl=“myService.asmx"

AutoCompletionServiceMethod="GetCompletionList“

AutoCompletionMinimumPrefixLength="1"

runat="server" />

PRS420 ASP.NET: Future Directions for Developing Rich Web Applications with Atlas (Part 2)

asp net atlas demos

ASP.NET “Atlas” Demos

MSN Hotmail

A Simple “Atlas” Application

windows presentation foundation1
Windows Presentation Foundation

BUILD THE APPLICATIONS YOU

ALWAYS DREAMED OF

the wpf approach
The WPF Approach
  • Unified approach to UI, Documents, and Media
    • Integrated development and experiences
  • New Windows Infrastructure
    • Retained graphics, vector based engine
    • Built on modern display hardware (D3D)
    • Modern development framework and patterns
  • Designers and Tools Matter
    • Bringing designers into the process
    • Declarative programming models for toolablity and flexibility
wpf capabilities

Media Integration Layer

Base Services

Document Services

Imaging

2D

Text

Audio

XAML

XPS Documents

Video

Effects

3D

Accessibility

Packaging Services

Animation

Input & Eventing

User Interface Services

Composition Engine

Property System

Application Services

Controls

Databinding

Deployment Services

Layout

WPF Capabilities

PRS305 WPF: A Lap around the Windows Presentation Foundation

wpf base services

Base Services

XAML

Accessibility

Input & Eventing

Property System

WPF Base Services

C#

Button btnOk = new Button();

btnOk.Background = new RadialGradientBrush(

Colors.White, Colors.Blue);

btnOk.Content = "Ok";

XAML

<Button Name="btnOk">

<Button.Background>

RadialGradient White Blue

</Button.Background>

OK

</Button>

VB .NET

Dim btnOk As New Button

btnOk.Background = New RadialGradientBrush( Colors.White, Colors.Blue)

btnOk.Content = "Ok"

wpf media integration layer

Media Integration Layer

Imaging

2D

Text

Audio

Video

Effects

3D

Animation

Composition Engine

WPF: Media Integration Layer

Visual Brushes – 2D on 3D

<VisualBrush x:Key="ContentOn3D" Stretch="Uniform" >

<VisualBrush.Visual>

<Button>OK</Button>

</VisualBrush.Visual>

</VisualBrush>

<!-- Create 3D Model -->

...

<DiffuseMaterial Brush="{StaticResource ContentOn3D}"/>

Vector Graphics

<Path

Data= "M 100,200

C 100,25 400,350 400,175

H 280"

Stroke = "Red"

StrokeThickness="3"

/>

Media

<MediaElement

Source=“video.wmv”

/>

PRS309 WPF: Overview of Windows Vista Graphics

PRS325 WPF: Advanced Graphics (Part 1) – 2D, 3D, Text

PRS328 WPF: Advanced Graphics (Part 2) – Animations, Imaging, Effects, Media

wpf user interface services

User Interface Services

Application Services

Controls

Databinding

Deployment Services

Layout

WPF: User Interface Services

Layout & Databinding

<StackPanel>

<Label>Select A Customer</Label>

<ListBox

Name="myListBox"

Background="HoneyDew"

ItemsSource="{Binding

{StaticResource myDataSource}}"

</ListBox>

</StackPanel>

PRS314 WPF: Using Application Services

PRS317 WPF: Beautiful Code, Beautiful Design – Applications Your Designers Can Work With

PRS324 WPF: Using Data in Your WPF Applications: XML, WCF, ADO.NET and More

PRS329 WPF: Building User Interface with Advanced Layout Technologies

PRS330 WPF: Creating Rich Content Experiences in Your Applications

wpf document services

Document Services

XPS Documents

Packaging Services

WPF: Document Services

Packaging Services

XpsDocument curDoc = new XpsDocument(Package.Open("foo.xps"));

curDoc.SignDigitally(cert …);

curDoc.Close();

PRS330 WPF: Creating Rich Content Experiences in Your Applications

PRS333 WPF: Advances in Document Workflow – Securing, Viewing and Printing Your Content

windows presentation foundation demo

Windows Presentation Foundation Demo

Allscripts Patient Monitor

wpf e1
“WPF/E”
  • Strategy
    • “WPF/E” is a subset runtime of WPF that’s small, fast, and will run everywhere (e.g., Windows, Macintosh, Devices)
    • Focused on scenarios that would like the Richness of WPF, but require more Reach
  • Implementation
    • Subset includes vector, image, video, animation, text, controls
      • Considering out of scope
        • 3D, Adaptive Documents, Extensibility, Hardware Acceleration
        • Would like your feedback
    • No compilation required – WPF XAML+JScript
    • Hostable and programmable
      • ActiveX and Plug-ins for Browser Hosting
      • Native or ActiveX hosting for application scenarios
wpf e demo

WPF/E Demo

WPF/E technology overview

choosing the right technology
Choosing the Right Technology

ASP.NET “Atlas”

  • Need the reach of DHTML, want application level features

Direct 3D

  • 3D centered technical applications, twitch games

Windows Forms

  • Business applications across all versions of Windows

Windows Presentation Foundation

  • Immersive Experiences, next generation Windows applications

WPF/E

  • Focused on interactive content across multiple platforms and devices
presentation technologies together
Presentation Technologies Together
  • ASP.NET “Atlas” & “WPF/E”
    • ASP.NET “Atlas” will target the “WPF/E” runtime
    • “WPF/E” can be used as an ActiveX control or plugin on HTML pages
  • WPF
    • “Web Browser Applications” can be hosted in browser or frames (with partial trust)
  • WPF & Win32
    • WPF applications can host Win32 HWNDs
    • Win32 based application can host Avalon content
  • WPF & Windows Forms
    • WPF applications can host Windows Forms controls and content
    • Windows Forms applications can host WPF controls and content

PRS313 WPF: Integrating with Your Win32/MFC Application

PRS321 Windows Forms: Integrating Windows Forms and Windows Presentation Foundation

PRS334 WPF + WCF = Magic

in closing
In Closing…
  • We are building platform technologies that empower developers to meet the demand for richer user experiences
  • Broad number of alternatives for building presentation solutions
    • We want to help you solve your critical architectural and business problems
  • Opportunity for developers to differentiate based on experience, which can drive a new business cycle
    • Increased revenue, reduced cost, increased user productivity
presentation platform @ pdc
Presentation Platform @ PDC
  • 45+ sessions at the PDC
    • Get Started
      • PRS305 WPF: A Lap Around Windows Presentation Foundation
      • PRS312 ASP.NET: Future Directions for Developing Rich Web Applications with Atlas (Part 1)
    • Go Deep
      • ASP.NET
      • Direct 3D
      • Windows Forms
      • Windows Presentation Foundation
      • Windows Vista
    • See Case Studies at lunch
  • Find us here at the PDC:
    • Presentation Track Lounge
    • 30+ Hands on Labs
    • Ask the Experts on Thursday night
  • http://msdn.microsoft.com
slide34

© 2005 Microsoft Corporation. All rights reserved.

This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.