1 / 34

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

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.

patch
Télécharger la présentation

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

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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

  3. 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

  4. 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

  5. User Experience Matters Consumer Software HTML DHTML WinFX

  6. User Experience Matters Productivity Software MSN Hotmail (today) MSN Hotmail (beta) Office: Outlook

  7. ASP.NET “Atlas” Windows Presentation Foundation WPF/E DHTML Win32 Direct 3D Windows Forms Rising Expectations for User Experience

  8. Win32 (User, GDI) Direct 3D Windows Forms WPF Presentation Technologies

  9. HTML DHTML ASP.NET “Atlas” WPF/E Presentation Technologies

  10. ASP.NET “Atlas”

  11. 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)

  12. “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

  13. “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>

  14. “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>

  15. “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)

  16. ASP.NET “Atlas” Demos MSN Hotmail A Simple “Atlas” Application

  17. Windows Presentation Foundation

  18. Windows Presentation Foundation BUILD THE APPLICATIONS YOU ALWAYS DREAMED OF

  19. 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

  20. 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

  21. 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"

  22. 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

  23. 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

  24. 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

  25. Windows Presentation Foundation Demo Allscripts Patient Monitor

  26. “WPF/E”

  27. “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

  28. WPF/E Demo WPF/E technology overview

  29. Windows Presentation Foundation Demo 3M Fire Prevention

  30. 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

  31. 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

  32. 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

  33. 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

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

More Related