250 likes | 531 Views
Extending your with Windows 7 and Surface WPF features. Katrien De Graeve Developer Evangelist Microsoft Belgium & Luxembourg http://blogs.msdn.com/katriend/. Agenda. Client continuum Windows 7 and WPF Tooling features Surface. Client continuum. Client continuum. Tools. Designer Tools.
E N D
Extending your with Windows 7 and SurfaceWPF features Katrien De GraeveDeveloper EvangelistMicrosoft Belgium & Luxembourg http://blogs.msdn.com/katriend/
Agenda • Client continuum • Windows 7 and WPF • Tooling features • Surface
Tools Designer Tools Developer Tools
Multi-touch Is Here! • Hardware • Multi-touch capable machines in market today, multi-touch appears in a broad set of form factors • Software • Windows 7, .Net 4.0 • Consumers • New scenarios, next wave of user experience, high “WOW” factor
UX Considerations • General guidelines: • Big targets • Whitespace • Avoid hover • See UX guidelines • Be aware of hardware: • Form factor • Avoid on-hover UI • Edges, jitter, etc • Gesture guidelines: • Use common gestures • Gestures need to be intuitive and natural • Moving away from shortcut style gestures to manipulations and direct manipulation
Multi-touch In .Net Framework • For WPF: • 3.5 update near Windows 7 launch • Multi-touch, gesture APIs • 4.0 release • Multi-touch specific new controls • For WinForms (Windows 7 launch): • Interop to native Win32 APIs • Use managed Manipulations/Inertia wrappers
Touch Development Roadmap Windows 7 Release NET 3.5 / Surface 1.0 Release NET 4.0 / Surface 2.0 Release WPF Application Native Win32 Application WinFormsApplication Surface Application Surface SDK 1.0 Surface SDK 2.0 Multi-Touch Controls Surface Multi-Touch Controls & API Multi-Touch API Managed Wrapper and Interop WPF 3.5 x WPF 4.0 WPF 3.5 Multi-Touch API Multi-Touch API and Controls Surface Hardware Windows Vista Surface Hardware Windows 7 Windows 7 Multi-Touch API
WPF 4.0 • Multitouch • Full Trust XBAPs • Media Element improvements • Client profile • Data controls • Control themes • Chart controls • VSM Integration • Windows 7 ribbon • Lots more...
WPF for Windows 7 • Multi touch • Taskbar integration • Ribbon • Command dialogs • More...
Tooling: Blend 3 • Improvements to XAML authoring • VSM • Behaviors • Transition animations • Prototyping tools (SketchFlow) • More...
Microsoft Surface™ Overview
Interface Paradigm Shift CLI NUI GUI
Microsoft Surface And NUI Microsoft Surface computing uses sensing and display technology to infuse everyday surfaces with digital content and is comprised of the following unique attributes: Object recognition Direct interaction Multi-touch Multi-user Object recognition Direct interaction Multi-touch Multi-user
Meet Microsoft Surface Software PC w/ Custom Power Supply Light Engine 5 Camera Casting
Surface v1 Architecture Surface Applications WPF APIs Core API Shell UI & APIs Vision System Windows Integration Windows Vista SP1 Microsoft Surface Hardware & Drivers
Surface And WPF • Expose Surface capabilities in a way consistent with WPF • Infrastructure integration for consistent behavior with mouse • Automatic hit testing to find the control being touched • Sets attached properties on controls (IsContactOver, etc.) • Raises routed events on controls (ContactDown, etc.) • Custom versions of most built-in WPF controls • Custom controls for Surface-specific UX • Base classes for building custom Surface controls
Surface API Usage With WPF XAML <Window> <Canvas Mouse.MouseDown=“OnMouseDown“> <Button Click=“OnButtonClick”/> </Canvas> </Window> Code void OnMouseDown(object sender, MouseEventArgs e) { // ... } void OnButtonClick(object sender, RoutedEventArgs e) { // ... } XAML <s:SurfaceWindow> <Canvas s:Contacts.ContactDown=“OnContactDown“> <s:SurfaceButton Click=“OnButtonClick”/> </Canvas> </s:SurfaceWindow> Code void OnContactDown(object sender, ContactEventArgs e) { // ... } void OnButtonClick(object sender, RoutedEventArgs e) { // ... }
Surface Versions Of Common Controls SurfaceWindow Full screen on the Surface Oriented towards the user SurfaceMenu SurfaceContextMenu SurfaceMenuItem Multiple menus can be used at the same time SurfaceButton SurfaceRadioButton SurfaceCheckBox SurfaceToggleButton Only “click” when all contacts are removed
Surface Versions Of Common Controls • SurfaceListBox • SurfaceScrollViewer • Determines scrolling vs. select • Allows flicking • Provides “elastic” effect • SurfaceSlider • SurfaceScrollBar • Allows flicking • Track input results in smooth animation and capture • Subtle UX when not in use • SurfaceTextBox • SurfacePasswordBox • Invokes virtual keyboard oriented towards user when touched
Microsoft Surface Touch the future of computing
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.