Beruflich Dokumente
Kultur Dokumente
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
Vision: Create a consistent family of
platforms and tools to help
developers meet their customer
needs through creation of client
experiences
3
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
5
User Experience Matters
Productivity Software
6
Rising Expectations for User
Experience
Windows Presentation
Foundation
Windows Forms Win32 Direct
3D
WPF/E
DHTML ASP.NET
“Atlas”
7
Presentation Technologies
Powerful &
Productive User Reading & Graphics &
Programmin Interface Documents Media
g Model
Win32
(User, GDI)
Direct 3D
Window
s Forms
WPF
8
Presentation Technologies
Powerful &
Productive User Reading & Graphics &
Programmin Interface Documents Media
g Model
HTML
DHTML
ASP.NET
“Atlas”
WPF/E
9
ASP.NET “Atlas”
10
ASP.NET “Atlas”
RAMEWORK FOR BUILDING RICHER, MORE INTERACTIV
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
(Part 1)
based
PRS312 ASP.NET: Future Directions for Developing Rich Web Applications with Atlas 11
“Atlas” Architecture
HTML, Script, “Atlas”
“Atlas” Service “Atlas”-enabled Web Services
Markup Proxies ASP.NET Pages (ASMX or WCF)
function onComplete(results) {
$(‘ResultsDataSource’).set_data(results);
}
</script>
14
“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 15
(Part 2)
ASP.NET “Atlas” Demos
MSN Hotmail
A Simple “Atlas” Application
16
Windows Presentation
Foundation
17
Windows Presentation
Foundation
18
The WPF Approach
Unified approach to UI, Documents, and
Media
Integrated development and experiences
19
WPF Capabilities
XAML
Accessibility
Property System
C#
Button btnOk = new Button();
btnOk.Background = new
RadialGradientBrush(
XAML Colors.White, Colors.Blue);
<Button Name="btnOk">btnOk.Content = "Ok";
<Button.Background>
RadialGradient White BlueVB .NET
Dim btnOk As New Button
</Button.Background>
btnOk.Background = New
OK RadialGradientBrush(
</Button> Colors.White, Colors.Blue)
btnOk.Content = "Ok"
21
WPF: Media Integration
Layer Media Integration Layer
Imaging 2D Audio
Text
Effects 3D Video
Animation
Composition Engine
Visual Brushes – 2D on 3D
Vector Graphics
<Path
<VisualBrush x:Key="ContentOn3D" Stretch="Uniform" >
Data= "M 100,200
<VisualBrush.Visual> Media
C 100,25 400,350 400,175
<Button>OK</Button> <MediaElement
H 280"
</VisualBrush.Visual> Source=“video.wmv”
Stroke = "Red"
</VisualBrush> />
<!-- StrokeThickness="3"
Create 3D Model -->
...
/>
<DiffuseMaterial Brush="{StaticResource ContentOn3D}"/>
PRS309 WPF: Overview of Windows Vista Graphics
PRS325 WPF: Advanced Graphics (Part 1) – 2D, 3D, Text
PRS328 WPF: Advanced Graphics (Part 2) – Animations, Imaging, 22
Effects, Media
WPF: User Interface
Services User Interface Services
Packaging Services
XpsDocument curDoc = new
XpsDocument(Package.Open("foo.xps"));
curDoc.SignDigitally(cert …);
curDoc.Close();
25
“WPF/E”
26
“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 27
WPF/E Demo
28
Windows Presentation
Foundation Demo
3M Fire Prevention
29
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 30
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
PRS313 WPF: Windows
Integrating withForms applications
Your Win32/MFC Application can host WPF controls and
PRS321 Windows Forms: Integrating Windows Forms and Windows Presentation 31
Foundation content
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 32
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 33
© 2005 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.