SlideShare a Scribd company logo
UI Design and
Interaction Guide
for Windows Phone 7
                      7

July 2010
Version 2.0
UI Design and
Interaction Guide
for Windows Phone 7
July 2010
Version 2.0




This is pre-release documentation and is subject to change in future releases.
This document supports a preliminary release of a software product that
may be changed substantially prior to final commercial release. This docu-
ment is provided for informational purposes only and Microsoft makes
no warranties, either express or implied, in this document. Information in
this document, including URL and other Internet Web site references, is
subject to change without notice. The entire risk of the use or the results
from the use of this document remains with the user. Unless otherwise
noted, the companies, organizations, products, domain names, e-mail
addresses, logos, people, places, and events depicted in examples herein
are fictitious. No association with any real company, organization, product,
domain name, e-mail address, logo, person, place, or event is intended
or should be inferred. Complying with all applicable copyright laws is the
responsibility of the user. Without limiting the rights under copyright, no
part of this document may be reproduced, stored in or introduced into a
retrieval system, or transmitted in any form or by any means (electronic,
mechanical, photocopying, recording, or otherwise), or for any purpose,
without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights,
or other intellectual property rights covering subject matter in this docu-
ment. Except as expressly provided in any written license agreement from
Microsoft, the furnishing of this document does not give you any license
to these patents, trademarks, copyrights, or other intellectual property.

© 2010 Microsoft Corporation. All rights reserved.

Microsoft Bing, Expression, Expression Blend, Internet Explorer, MSDN,
MSN, Outlook, PlayReady, Silverlight, Visual Basic, Visual C#, Visual Studio,
Windows, Windows Azure, Windows Live, Windows Vista, Xbox, Xbox
360, Xbox LIVE, XNA, and Zune are trademarks of the Microsoft group of
companies.

All other trademarks are property of their respective owners.
The Windows Phone 7 design philosophy        8      Application settings           68          Light sensor                   130      Text box                           188
The Windows Phone 7 human/computer               Input methods                     70   Output methods                        132   User interface text guidelines        190
interface                                   14      Touch input                    72   FM radio                              134      Text guidelines – voice and tone   192
A note on units: pixels vs millimeters      16         Supported touch gestures    78   Windows phone application interface            Text guidelines – capitalization   194
A note on game UI design                    18             Tap                     80   controls                              136      Text guidelines – punctuation      196
Visual design resources and feedback        20             Double tap              82      Border                             138   Miscellaneous                         198
Globalization and localization                             Pan                     84      Push button                        140
considerations                              22             Flick                   86      Canvas                             142
User interface framework                    24             Pinch and stretch       88      Check box                          144
   Start                                    26             Touch and hold          90      Content control                    146
   Application bar                          30         Four touch points           92      Content presenter                  148
   Application bar icons                    32       On-screen keyboard            94      Grid                               150
   Application bar menu                     36       Hardware keyboard             98      Hyperlink                          152
   Screen orientations                      38       Microphone                   102      Image                              154
   Fonts                                    40       Phone hardware buttons       104      InkPresenter                       156
   Incoming phone calls                     42         Start button               106      ListBox                            158
   Push notifications                       44         Search button              108      MediaElement                       160
       Tiles and tile notification          46         Back button                110      Multi scale image                  162
       Toast notifications                  48         Power button               112      Panorama                           164
       Raw notifications                    50         Volume buttons             114      Password box                       172
   Navigation, frames and pages             52         Camera button              116      Pivot                              174
       Page title                           56      Sensors                       118      Progress bar                       176
   Progress indicator                       58         Accelerometer              120      Radio button                       178
   Scroller                                 60         A-GPS                      122      Scroll viewer                      180
   Themes                                   62         Proximity sensor           124      Slider                             182
   Screen transitions and animations        64         Camera                     126      Stack panel                        184
   System and system application settings   66         Compass                    128      Text block                         186
8       The Windows Phone 7 design philosophy                                                                                                                                                                                 9




                                                                              Windows® Phone 7 is for Life Maximizers, people who are busy personally
                                                                              and professionally, constantly juggling priorities, and who value technol-
                                                                              ogy as a means to an end, a way to get things done.

                                                                              They do not want to feel overwhelmed because they have priorities to
                                                                              balance as they grow personally and professionally, all the while living life
                                                                              to its fullest.

                                                                              Applications should embody the three Red Threads of Windows Phone 7:

                                                                                       • Personal – your day, your way

                                                                                       • Relevant – your people, your location

                                                                                       • Connected – your stuff, your peace of mind

                                                                              Every application should connect to at least one of these threads. Cre-
                                                                              ate applications that can be personalized by humanizing them to display
                                                                              people whom the users know or places that users want to go to, and
                                                                              make it easy to share information across the web and beyond.

                                                                              Build authentic experiences.




    Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
            ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
10       The Windows Phone 7 design philosophy                                                                                                                                                                                 11




                                                                               The Windows Phone OS 7 User Interface (UI) is based on a design that is
                                                                               internally named Metro, and echoes the visual language of airport and
                                                                               metro system signage in its design and typeface. The goal is to create
                                                                               contextual relevance through content – the user’s own content – so that
                                                                               using the phone is a personal experience. Metro design interfaces embody
                                                                               harmonious, functional, and attractive visual elements that encourage play-
                                                                               ful exploration so that the user feels a sense of wonder and excitement. A
                                                                               clear, straightforward design not only makes an application legible, it also
                                                                               encourages usage and can lead to delight.

                                                                               The Metro design was developed using the five following principles:

                                                                                       1) Clean, light, open, and fast: It is visually distinctive, contains
                                                                                       ample white space, reduces clutter and elevates typography as
                                                                                       a key design element.

                                                                                       2) Content, not chrome: It accentuates focus on the content that
                                                                                       the user cares most about, making the product simple and ap
                                                                                       proachable for everyone.

                                                                                       3) Integrated hardware and software: Hardware and software
                                                                                       blend into each other and creates a seamless user experience from
                                                                                       single-button access to Search, Start, Back and the camera to
                                                                                       on-board sensor integration..

                                                                                       4) World-class motion: The Windows Phone 7 touch and gesture
                                                                                       experiences on capacitive screens are consistent with Windows 7
                                                                                       on the desktop and include hardware-accelerated animations and
                                                                                       transitions to enhance the user’s experience at every turn.

                                                                                       5) Soulful and alive: A personalized, automatically updated view
                                                                                       into the information that matters most to the user is enabled and
                                                                                       brings to life a cinematic photo and video experience by having
                                                                                       a fully integrated Zune media player experience.

                                                                               These design principles are based around the concept that UI elements
                                                                               should be authentically digital and embody harmonious, functional, and
                                                                               attractive visual elements. Applications should engage users by promoting
                                                                               navigation, exploration, and exciting visuals in their design.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
12       The Windows Phone 7 design philosophy                                                                                                                                                                                    13




                                                                               Developers should use digital metaphors where natural and
                                                                               appropriate and should not necessarily try to mimic real world
                                                                               interaction if it is not appropriate. If it is, the UI should look and
                                                                               feel great even though the UI objects only visually imitate and
                                                                               mimic analog manipulation behaviors. The Windows Phone
                                                                               Developer Tools provides a collection of Metro-inspired Silver-
                                                                               light controls for use in applications.

                                                                               Microsoft highly recommends that Windows Phone 7 develop-
                                                                               ers adopt the Metro design style for their applications. This
                                                                               guide provides the design knowledge, fundamentals, and
                                                                               guidance to do so. Although requirements and implementa-
                                                                               tions will vary from application to application, utilizing Metro
                                                                               styled elements will create a more consistent and fluid overall
                                                                               UI experience for users.

                                                                               This guide also details the methods of user interaction that can
                                                                               be used by a Windows Phone 7 application, including standard
                                                                               input, functionality within the UI framework, and the Metro-
                                                                               inspired Silverlight® and system-based controls. Diverging
                                                                               from the Windows Phone 7 interaction model is generally not
                                                                               allowed, but developers can gain a deeper understanding of
                                                                               the hardware and software interaction elements that are avail-
                                                                               able as a part of the development platform, and those that are
                                                                               customizable.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                                 This is pre-release documentation and is subject to change in future releases.
14       The Windows Phone 7 human/computer interface                                                                                                                                                                           15




                                                                               The first computing devices were manual objects that required touch to                     Usability and the UI should be
                                                                               operate them. The interfaces were the stones of an abacus or the dials                     a primary design goal in every
                                                                               on a difference engine. The information was simply seen as the state of                    application for Windows Phone 7,
                                                                                                                                                                          not an afterthought.
                                                                               the device. As electronic computers were birthed, input methods rapidly
                                                                               evolved from switches to keyboard and mouse, and output methods from                       As developers create applications,
                                                                               silent, blinking lights to high-definition displays with stereo sound. This                they should place special emphasis
                                                                               transition exponentially increased what could be done with computers,                      throughout to ensure that layouts,
                                                                               but ironically made them much harder to use because the only way to                        pictures, visual elements and touch-
                                                                                                                                                                          based controls fit this UI paradigm.
                                                                               manipulate them or their data was through an interface that was only
                                                                               a proxy to the computing event hidden away inside a case.                                  Celebrate and elevate the content to
                                                                                                                                                                          be the experience by using the UI to
                                                                               While a child can play with an abacus and intuitively learn how to operate                 create awesome, unique applications
                                                                               it through exploration and play, the same cannot be said for computing                     that draw people in and encourage
                                                                               devices that do not have a touch component.                                                touch.

                                                                               The Windows Phone 7 UI is designed around touch interaction, offer-
                                                                               ing full navigation using a combination of finger gesture movements.
                                                                               Knowledge about interacting with layouts should be inherently obvious.
                                                                               There are no complex key chords or arcane commands to memorize, and
                                                                               the keyboard’s role is to input text. People intuitively tap, flick, pan, and
                                                                               otherwise touch and manipulate content directly since the content is the
                                                                               interface.

                                                                               With A-GPS functionality, sensors such as an accelerometer, and
                                                                               a vibration unit, the UI can be extended beyond the surface of the phone
                                                                               to include where it is in the world, what orientation it is at, and how it feels
                                                                               – the phone itself is the UI.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
16       A note on units: pixels vs millimeters                                                                                                                                                                              17




                                                                               All Windows Phone 7 phones will have WVGA screens at 800 x 480 pixel                    If developers or designers require
                                                                               resolution, no matter the screen size. Most of the measurement units                    precise millimeter sizing for UI
                                                                               in this guide are expressed in pixels but in certain cases, usually around              elements, consult original equipment
                                                                                                                                                                       manufacturers display specifications
                                                                               touch target size, measurements may be expressed in millimeters.
                                                                                                                                                                       for the proper conversion factor to go
                                                                                                                                                                       from pixels to millimeters.
                                                                               Since these units are not directly convertible without knowing the pixels
                                                                               per millimeter of a given screen, designers and developers who require
                                                                               fine-grained millimeter positioning or sizing of elements for a given screen
                                                                               size will need to refer to original equipment manufacturers display specifi-
                                                                               cations as there is no method to determine this programmatically.

                                                                               All of the controls and UI elements within the Windows Phone Developer
                                                                               Tools are sized to support all possible screen sizes for Windows Phone
                                                                               and adhere to minimum millimeter touch targets regardless of the screen
                                                                               size.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
18       A note on game UI design                                                                                                                                                                                               19




                                                                               Games are naturally immersive environments and their UIs should flex to                    For full-screen games, developers are
                                                                               accommodate the needs of the game.                                                         free to implement whatever in-game
                                                                                                                                                                          UI elements they see fit. For games
                                                                               By creating games that are designed from the beginning to use a multitouch                 that appear within the Windows Phone
                                                                               screen, games will make the most of the primary input device of the phone,                 page frame, developers should follow
                                                                                                                                                                          the relevant UI guidance in the rest of
                                                                               and control systems will feel natural to Windows Phone users. Though there
                                                                                                                                                                          this document.
                                                                               are hardware buttons on the device, only the Back button is available to the
                                                                               game, and Back should only be used for the specific purpose of pausing and
                                                                               exiting the game.

                                                                               Think about what types of control schemes fit well with a multitouch device,
                                                                               and break away from simulating traditional controls, such as thumbsticks as
                                                                               they take away useful space from the gameplay area. Instead, use gestures,
                                                                               such as point, stretch, shrink, flick, and turn as user input instead. Allow play-
                                                                               ers to draw paths on the screen to direct units and issue commands; allow
                                                                               them to select groups of units by stretching an on-screen rectangle around
                                                                               them. Allow players to navigate by dragging the landscape with a swipe
                                                                               gesture, or to rotate the view by turning it with two fingers. There are many
                                                                               possibilities for game control using touch, and by choosing a scheme that
                                                                               seems natural and intuitive to gamers, you’ll provide the best experience on
                                                                               Windows Phone.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
20       Visual design resources and feedback                                                                                                                                                                                21




                                                                               To help designers and developers create high-fidelity visual mockups of
                                                                               applications that are true to the Metro design, Microsoft has created two
                                                                               visual design resources for inspiration and project work.

                                                                               The first is the Windows Phone Design System – Codename Metro,
                                                                               a PDF book that visually explains the inspiration behind the Metro design
                                                                               and puts a face to the life maximizers the phone was designed for.

                                                                               The second is the Windows Phone Design Templates, layered Photo-
                                                                               shop template files for controls that ship as a part of the Windows Phone
                                                                               Developer Tools and can be used to create pixel-perfect application
                                                                               layouts to guide development or pitch an idea. The design templates also
                                                                               include examples of controls that are a part of Windows Phone OS 7.0,
                                                                               but are not available as a part of the Windows Phone Developer Tools.
                                                                               These additional templates are included to help designers and developers
                                                                               maintain a consistent look and feel across applications for system controls
                                                                               that developers wish to mimic.

                                                                               The above resources and links to programming topics related to the UI
                                                                               elements discussed in this guide can be accessed at http://go.microsoft.
                                                                               com/fwlink/?LinkID=190696.

                                                                               Microsoft values feedback on this guide and the Visual Design Resources
                                                                               we have made available to help developers and designers create beautiful
                                                                               Windows Phone 7 applications. If you have suggestions or feedback about
                                                                               these resources, please email us at wp7des@microsoft.com. We may not
                                                                               be able to respond to every email, but we will consider incorporating your
                                                                               feedback into the next versions of the resources.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
22       Globalization and localization considerations                                                                                                                                                                                                   23




                                                                                                            Windows Phone 7 will be available in a number of languages and regions                 Provide at least 40% buffer space for
                                                                                                            around the world. Developers who are interested in selling their applica-              localized strings.
                                                                                                            tions to a global market should pay particular attention to making sure
                                                                                                            that their applications are world-ready by following best practices around
                                                                                                            designing the application UI to support varying text string lengths, date
                                                                                                            formats, and be aware of cultural sensitivities around use of color and
                                                                                                            images, and geopolitical issues. MSDN online, http://msdn.microsoft.com,
                                                                                                            has a variety of topics that detail these best practices.




                                                                   Image Source: NASA’s Earth Observatory




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                                                        This is pre-release documentation and is subject to change in future releases.
24       User interface framework                                                                                                                                                                                             25




                                                                               The Windows Phone 7 user interface framework provides consistent
                                                                               system objects, events, and interactions for developers and designers
                                                                               to create beautiful, predictable application experiences for the end user.

                                                                               This section examines each piece of the framework and discusses how
                                                                               they can be used or accommodated within application user interfaces.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
26       Start                                                                                                                                                                                                                 27




                                                                               Start is the beginning of the Windows Phone 7 experience for users after                  Start is a reserved space and only
                                                                               they power on their phone. Start displays application Tiles that users                    users can place tiles in this area.
                                                                               have pinned and placed in a position of their choosing for quick launch.                  Windows Phones come with pre-placed
                                                                                                                                                                         tiles installed by Microsoft, phone
                                                                               Pressing the Start Button on the phone always returns a user to Start, no
                                                                                                                                                                         manufacturers, and phone service
                                                                               matter what application is running.                                                       providers.

                                                                               Tiles that use the Tile Notification feature can update the Tile graphic or               Start is the likely to be the most
                                                                               title text, or increment a counter, enabling users to create a personalized               viewed phone interface by users;
                                                                               Start experience. Examples include displaying if it is their turn in a game,              therefore, developers and designers
                                                                               the weather, or how many email messages they have received.                               should carefully consider the potential
                                                                                                                                                                         that users may pin and display the
                                                                               Start is always presented in portrait view.                                               Application Tile for their application in
                                                                                                                                                                         Start.

                                                                                                                                                                         For more information, see the
                                                                                                                                                                         Application Tiles and Tile Notifications
                                                                                                                                                                         and Start Button sections.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
28       Status bar                                                                                                                                                                                                             29




                                                                               The Status Bar is one of the two primary components of Windows Phone                       The Status Bar is system-reserved and
                                                                               OS 7.0 chrome. The Application Bar is the other.                                           cannot be modified.

                                                                               It is an indicator bar that displays system-level status information in a                  It can be hidden, but many users view
                                                                                                                                                                          the system clock as an essential feature
                                                                               simple and clean presentation in a reserved space in the application work-
                                                                                                                                                                          so think carefully before hiding it.
                                                                               space. It automatically updates to provide different notifications and keeps
                                                                               users aware of system-level status by displaying the following information
                                                                               (in order from left to right):

                                                                                        1) Signal strength

                                                                                        2) Data connection

                                                                                        3) Call forwarding

                                                                                        4) Roaming

                                                                                        5) Wireless network signal strength

                                                                                        6) Bluetooth status

                                                                                        7) Ringer mode

                                                                                        8) Input status

                                                                                        9) Battery power level

                                                                                        10) System clock

                                                                               By default, only the system clock is always visible. If a user double taps in
                                                                               the Status Bar area, all other relevant indicators slide into view for approxi-
                                                                               mately eight seconds before sliding out of view.

                                                                               The system clock is 32 pixels high in portrait mode and 72 pixels wide
                                                                               in landscape mode. It always extends to the edge of the screen and is
                                                                               opaque in appearance.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
30       Application bar                                                                                                                                                                                                     31




                                                                               The Application Bar provides a place for developers to display up to four               Use icon buttons for the primary, most-
                                                                               of the most common application tasks and views as icon buttons.                         used actions in the application. Do not
                                                                                                                                                                       use four icons just to use them. Less is
                                                                               The Application Bar provides a view that displays icon buttons with text                more in this space.
                                                                               hints and an optional context menu when a user taps the visual indica-
                                                                                                                                                                       Some actions are difficult to clearly
                                                                               tor of sequential dots or flicks up the Application Bar. This view can be               convey with an icon. Place it in the
                                                                               dismissed by tapping outside of the menu area or on the dots, using the                 Application Bar Menu instead.
                                                                               back button, or selecting a menu item or Application Bar Icon.
                                                                                                                                                                       For guidelines about icon button sizing,
                                                                               The Application Bar always stays on the same edge of the display as the                 color, formatting, and text hints, see
                                                                               Steering Buttons (Back, Start, and Search) and extends the full width of the            the Application Bar Icons topic. For
                                                                                                                                                                       guidelines about the Application Bar
                                                                               screen in portrait or landscape mode. Icon buttons will rotate to align with
                                                                                                                                                                       Menu, see the Application Bar Menu
                                                                               the three phone orientations.                                                           topic.

                                                                               Application Bar buttons can be displayed in an enabled or disabled state.               No text-only buttons are permitted.
                                                                               An example of a disabled button would be a delete button in read-only
                                                                               scenarios.                                                                              Place tasks that are not frequently
                                                                                                                                                                       accessed in the Application Bar Menu.
                                                                               The application bar height in portrait mode and width in landscape mode
                                                                                                                                                                       Application Bar Menu item text will
                                                                               is fixed at 72 pixels and cannot be modified. It can be set to be displayed             run off the screen if it is too long. The
                                                                               or hidden.                                                                              recommended maximum length for the
                                                                                                                                                                       text of a menu item is between 14 to
                                                                                                                                                                       20 characters. Again, less is more in this
                                                                                                                                                                       space.

                                                                                                                                                                       Use the user-defined system theme
                                                                                                                                                                       color unless there is a compelling
                                                                                                                                                                       reason to override it. Using a custom
                                                                                                                                                                       color can affect the display quality
                                                                                                                                                                       of the button icons, create unusual
                                                                                                                                                                       visual effects in menu animations,
                                                                                                                                                                       and negatively influence power
                                                                                                                                                                       consumption on some display types.

                                                                                                                                                                       The opacity of the Application Bar
                                                                                                                                                                       can be adjusted finely, but it is
                                                                                                                                                                       recommended that you use only
                                                                                                                                                                       opacity values of 0, .5, and 1. If the
                                                                                                                                                                       opacity is set to less than 1, the
                                                                                                                                                                       Application Bar will overlay the UI. If
                                                                                                                                                                       the opacity is set to 1, the displayed
                                                                                                                                                                       page size will change.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
32       Application bar icons                                                                                                                                                                                                                                           33




                                                                                                 Window Mobile 7 Series
                                                                                                 Basic Core Icons Vectors




                                                                                                                            Application Bar Icons should be clear, understandable, and leverage real-              Use icon buttons for the primary, most-
                                                                                                                            world metaphors that are familiar to users.                                            used actions in an application. Do not
                                                                                                                                                                                                                   use four icons just to use them. Less is
                   NEW                                ADD                          MINUS                    CHECK
                                                                                                                            The best icons have simple geometry and limit the amount of fine detail.               more in this space.

                                                                                                                            Icon text hints are displayed when users display the Application Bar Menu.             Some actions are difficult to clearly
                                                                                                                                                                                                                   convey with an icon. Present those
                                                                                                                                                                                                                   actions in the Application Bar Menu
                                                                                                                                                                                                                   instead. For more information about
                  CLOSE                              CANCEL                         SYNC                   REFRESH
                                                                                                                                                                                                                   the Application Bar Menu, see the
                                                                                                                                                                                                                   Application Bar topic.

                                                                                                                                                                                                                   Application Bar Icon images should
                                                                                                                                                                                                                   be 48 pixels by 48 pixels and have a
                                                                                                                                                                                                                   white foreground on a transparent
              QUESTION MARK                       EXCLAMATION                       BACK                     NEXT                                                                                                  background using an alpha channel.
                                                                                                                                                                                                                   The Application Bar will colorize the
                                                                                                                                                                                                                   icon according to the current style
                                                                                                                                                                                                                   settings and colored icons can cause
                                                                                                                                                                                                                   this effect to display unpredictably.

                  SEARCH                             DELETE                         SAVE                    FOLDER
                                                                                                                                                                                                                   Images that are sized at sizes other
                                                                                                                                                                                                                   than the recommended size will
                                                                                                                                                                                                                   be scaled to fit and can potentially
                                                                                                                                                                                                                   lower the overall image quality of the
                                                                                                                                                                                                                   Application Bar Icon.

                                                                                                                                                                                                                   The circle that is displayed on each icon
                  VIDEO                              CAMERA                        E-MAIL                  SETTINGS
                                                                                                                                                                                                                   button is drawn by the Application
                                                                                                                                                                                                                   Bar and should not be included in the
                                                                                                                                                                                                                   source image.



                 FAVORITES                      ADD TO FAVORITES                 DOWNLOAD                  UPLOAD




                  SHARE                               EDIT                     OVERFLOW DOTS




                   PLAY                               PAUSE                    PREVIOUS/REWIND        NEXT/FASTFORWARD



     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                                                                        This is pre-release documentation and is subject to change in future releases.
34       Application bar icons
             QUESTION MARK                        EXCLAMATION                       BACK               NEXT
                                                                                                                                                                                                     35




                  SEARCH                             DELETE                         SAVE              FOLDER




                                                                                                                                               Use the user-defined system theme
                                                                                                                                               color unless there is a compelling
                                                                                                                                               reason to override it. Using a custom
                  VIDEO                             CAMERA                         E-MAIL            SETTINGS
                                                                                                                                               color can affect the display quality
                                                                                                                                               of the button icons, create unusual
                                                                                                                                               visual effects in menu animations,
                                                                                                                                               and negatively influence power
                                                                                                                                               consumption on some display types.

                 FAVORITES                      ADD TO FAVORITES                 DOWNLOAD            UPLOAD                                    Buttons must have an icon and must
                                                                                                                                               have a text hint. Text hints should be
                                                                                                                                               short and provide context for what
                                                                                                                                               the button does and do not need
                                                                                                                                               to be fully descriptive. An example
                                                                                                                                               would be a button that flips an
                  SHARE                               EDIT                     OVERFLOW DOTS                                                   image horizontally. Instead of “flip
                                                                                                                                               horizontally”, “flip” would be sufficient.

                                                                                                                                               For more information, see the
                                                                                                                                               Application Bar and Application Bar
                                                                                                                                               Menu topic.
                   PLAY                              PAUSE                     PREVIOUS/REWIND   NEXT/FASTFORWARD
                                                                                                                                               A set of 64 Application Bar Icons, 32
                                                                                                                                               dark and 32 light in PNG format, are
                                                                                                                                               installed as a part of the Windows
                                                                                                                                               Phone Developer Tools Beta at C:
                                                                                                                                               Program FilesMicrosoft SDKs
                                                                                                                                               Windows Phonev7.0Icons. Only the
                                                                                                                                               white icons should be used in the
                                                                                                                                               Application Bar.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                    This is pre-release documentation and is subject to change in future releases.
36       Application bar menu                                                                                                                                                                                                37




                                                                               The Application Bar Menu is an optional way for users to access specific                A maximum of five menu items can be
                                                                               tasks from the Application Bar. The Application Bar Menu can be accessed                displayed.
                                                                               by tapping the visual indicator of sequential dots in the Application Bar or
                                                                                                                                                                       If no menu items are displayed, only
                                                                               by flicking the Application Bar up. This view can be dismissed by tapping               the icon text hints are displayed.
                                                                               outside of the menu area or on the dots, using the back button, or select-
                                                                               ing a menu item or Application Bar Icon.                                                The Application Bar Menu will remain
                                                                                                                                                                       on the screen until the user performs
                                                                               To prevent the menu from scrolling, the number of items displayed in the                an action.
                                                                               menu is limited to five.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
38       Screen orientations                                                                                                                                                                                                    39




                                                                               Windows Phone supports three views of screen orientation: portrait,                        Developers must add code to support
                                                                               landscape left, and landscape right.                                                       landscape views.

                                                                               In portrait view, the page is vertically oriented with the steering buttons                Applications cannot specify only left
                                                                                                                                                                          or only right landscape views if they
                                                                               appearing at the bottom of the phone and the height of the page is
                                                                                                                                                                          support orientation changes – both
                                                                               greater than the width.                                                                    views must be supported.

                                                                               In either of the two landscape views, the Status Bar and Application Bar                   Applications can define a static
                                                                               remain on the side of the screen that has the Power and Start Button,                      orientation view using the Supported
                                                                               respectively. Landscape left has the Status Bar on the left and landscape                  Orientations property.
                                                                               right has the Status Bar on the right.
                                                                                                                                                                          Applications that support text input
                                                                                                                                                                          should assume a horizontal hardware
                                                                               The Status Bar grows from 32 pixel in portrait view to 72 pixel in both
                                                                                                                                                                          keyboard is present and support
                                                                               landscape views, as measured from the side of the phone that has the                       landscape views.
                                                                               power button toward the center of the screen.
                                                                                                                                                                          Custom screen transition animation
                                                                               Portrait view is the default view for applications.                                        effects are prohibited.

                                                                               Start is always presented in portrait view.

                                                                               The screen orientation will change based on the following actions:


                                                                                Beginning Screen Orientation                            Rotating                                    Ending Screen Orientation
                                                                                Portrait                                                60 degrees left                             Landscape Left
                                                                                Portrait                                                60 degrees right                            Landscape Right
                                                                                Landscape Left                                          60 degrees right                            Portrait
                                                                                Landscape Right                                         60 degrees left                             Portrait
                                                                                Landscape Left or Right, flat on a table                30 degrees up                               Portrait


                                                                               If in portrait view, the screen orientation will change to either of the land-
                                                                               scape views when a user slides out a horizontal hardware keyboard.

                                                                               There is no programmatic way to switch orientations as the orientation
                                                                               property is set to read-only but it is possible to set a fixed orientation.

                                                                               Screen transition animation effects are played when screen rotation
                                                                               occurs.

                                                                               In-application landscape view-aware system components are the Status
                                                                               Bar, Application Bar, Application Bar Menu, Volume/Ring/Vibrate Display,
                                                                               Push Notifications, and Dialogs.


     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
40       Fonts                                                                                                                                                                                                              41




         Segoe WP Regular                                                      The Metro design principles center on a look that uses type prominently
                                                                               throughout Windows Phone 7. Segoe WP is the system font and it is
                                                                                                                                                                      Do not post Segoe WP fonts for
                                                                                                                                                                      redistribution or package with an
                                                                               a Unicode font. It has kern pairing, but does not have font hinting. It                application – this would violate the
         abcdefghijklmnopqrstuvwxyz1234567890                                  is available in five styles:
                                                                                                                                                                      license terms of the font.

         ABCDEFGHIJKLMNOPQRSTUVWXYZ                                              1)   Regular
                                                                                                                                                                      Since Segoe is such an integral part of
                                                                                                                                                                      the UI experience, use alternative fonts
                                                                                 2)   Bold                                                                            sparingly in applications.
                                                                                 3)   Semi-bold
                                                                                                                                                                      Avoid using font sizes that are smaller
         Segoe WP Bold                                                           4)   Semi-light
                                                                                                                                                                      than 15 points in size. Text that is
                                                                                 5)   Black
                                                                                                                                                                      smaller than 15 points in size can be
         abcdefghijklmnopqrstuvwxyz1234567890                                  A standard set of East Asian reading fonts that support Chinese standard,
                                                                                                                                                                      hard to read and are likely too small
                                                                                                                                                                      in size as touch targets without touch
         ABCDEFGHIJKLMNOPQRSTUVWXYZ                                            Japanese, and Korean is also included.                                                 target padding.

                                                                               Developers can embed their own fonts for use within their application,                 If using colorized fonts, use high-
                                                                               but they will only be available for use within that application.                       contrast colors at smaller point sizes
                                                                                                                                                                      to enhance readability and test against
         Segoe WP Semi-bold                                                                                                                                           both themes and all accent colors.

         abcdefghijklmnopqrstuvwxyz1234567890
         ABCDEFGHIJKLMNOPQRSTUVWXYZ

         Segoe WP Semi-light
         abcdefghijklmnopqrstuvwxyz1234567890
         ABCDEFGHIJKLMNOPQRSTUVWXYZ


         Segoe WP Black
         abcdefghijklmnopqrstuvwxyz1234567890
         ABCDEFGHIJKLMNOPQRSTUVWXYZ



     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
42       Incoming phone calls                                                                                                                                                                                                  43




                                                                               When a user receives or places a phone call, the UI of the application                    Applications that expect user
                                                                               currently in view is completely obscured to display the dial pad or infor-                interaction during a phone call should
                                                                               mation about the incoming call.                                                           have a minimum 75 pixel margin
                                                                                                                                                                         on the edge of the device that has
                                                                               Once the call is connected or accepted, the call information flips to the                 the power button. No touchable UI
                                                                                                                                                                         elements should be placed within that
                                                                               top of the screen and the application appears beneath it in a dimmed-
                                                                                                                                                                         margin.
                                                                               out view. Tapping in the dimmed-out area or pushing a hardware button
                                                                               minimizes the call progress information into a 64 pixel bar in the portrait
                                                                               mode and 75 pixels in the landscape mode. Tapping in the dimmed area
                                                                               brings the obscured application to the foreground for user interaction.

                                                                               If the keypad or additional call features are selected during a call, the
                                                                               application currently in view is completely obscured.

                                                                               Call progress information stays pinned to the same side of the phone as
                                                                               the power button and the text does not rotate from the portrait orienta-
                                                                               tion.

                                                                               If the proximity sensor senses an object near it, it will power off the screen
                                                                               to conserve battery. This happens when the phone is held to the ear or
                                                                               may also happen if the phone is being held horizontally and a finger
                                                                               obscures the sensor. The position of the proximity sensor will vary by
                                                                               phone manufacturer.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
44       Push notifications                                                                                                                                                                                                    45




                                                                               For application development, the Push Notification Service is designed to                 Use tile notifications for awareness-
                                                                               provide a cloud service with a dedicated, resilient, and persistent channel               only notifications.
                                                                               for pushing a notification to a mobile device. When a cloud service needs
                                                                                                                                                                         Use toast notifications for action-
                                                                               to send a push notification to a device, it sends a notification request to               requested notifications, but use them
                                                                               the Push Notification Service, which in turn routes the notification to the               sparingly, as all applications have
                                                                               application, or to the device as a tile, toast or raw notification.                       access to toast notifications. Too many
                                                                                                                                                                         toast notifications could annoy or
                                                                               There are three methods to display push notifications:                                    frustrate the user.

                                                                                        1. Tile notifications – Awareness notifications inform users of                  Use raw notifications for in-application
                                                                               changes or events that may have occurred and are non-disruptive to the                    action-required notifications.
                                                                               user workflow. They appear in Start tiles. See Application Tiles and Tile
                                                                               Notifications for more information.

                                                                                        2. Toast notifications – Action-requested notifications are
                                                                               system-wide notifications that do not disrupt the user workflow or require
                                                                               intervention to resolve. An example of these notifications is when the user
                                                                               receives a text message or instant message. These notifications appear at
                                                                               the top of the screen and are displayed for 10 seconds before disappear-
                                                                               ing. See Toast Notifications for more information.

                                                                                         3. Raw notifications – Action-required in-application notifications
                                                                               are fully controlled by an application and affect only that application.
                                                                               These appear within an application. See Raw Notifications for more infor-
                                                                               mation.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
46       Tiles and tile notification                                                                                                                                                                                           47




                                                                               A tile is an easily recognizable visual shortcut for an application or its                Applications that do not incorporate a
                                                                               content that users can set in an arbitrary location on the phone Start                    tile image or title will display a generic,
                                                                               experience. Other than pre-installed application tiles, only the user can                 system-defined icon and the name of
                                                                                                                                                                         your project.
                                                                               pin tiles to Start. There is no method for an application to determine if its
                                                                               tile has been pinned to Start, so developers should not assume that it is.                Tile images should be 173 pixels by 173
                                                                                                                                                                         pixels at 256 dpi and in JPEG or PNG
                                                                               Tiles can communicate information to the user by displaying an optional                   formats. Images larger or smaller than
                                                                               counter that uses the system font, updating developer-provided tile                       this in size will be cropped or scaled up
                                                                               background images, or displaying an optional title that uses the system                   using the top left corner as the origin.
                                                                               font that is of a fixed size and color. Counter, background image and                     The default tile image will be scaled
                                                                                                                                                                         down for display in the application list
                                                                               title updates are controlled using the Tile Notification service. The accent
                                                                                                                                                                         unless a separate 63 pixels by 63 pixels
                                                                               color for the counter is always the accent color that the user has selected.              application image is included.
                                                                               Counter display is optional.
                                                                                                                                                                         The tile title can be displayed without
                                                                               Double-width tiles are only available to Microsoft, phone manufacturers,                  using Tile Notifications.
                                                                               and mobile operators.
                                                                                                                                                                         If you use multiple tile images, they
                                                                                                                                                                         should be visually consistent with each
                                                                                                                                                                         other and have a recognizable theme
                                                                                                                                                                         or style.

                                                                                                                                                                         Developers cannot change the color,
                                                                                                                                                                         font, font color, or size of the counter
                                                                                                                                                                         display.

                                                                                                                                                                         Be conservative in the use of Tile
                                                                                                                                                                         Notifications – excessive use can
                                                                                                                                                                         negatively impact battery life.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
48       Toast notifications                                                                                                                                                                                                   49




                                                                               A web service can generate a special kind of push notification known                      Applications must default to turn toast
                                                                               as a toast notification, which displays as an opaque bar in the Accent                    notifications off.
                                                                               Color on the top of the screen for 10 seconds to be tapped on before
                                                                                                                                                                         Toast notifications should be personally
                                                                               disappearing. If the notification is tapped, the application that sent the                relevant and time critical to the user.
                                                                               notification will launch. The toast notification displays a scaled-down
                                                                               version of the application icon in the left corner and two fields of text are             Toast notifications should primarily
                                                                               available, one bolded title and one normal sub-title. Text that is longer                 be focused on peer-to-peer
                                                                                                                                                                         communication.
                                                                               than the display area will be truncated.
                                                                                                                                                                         Use the XNA Framework GamerServices
                                                                               Examples would be notifications produced via an instant messaging client                  for turn-based or in-game
                                                                               or a peer-to-peer oriented application. Turn-based games should use the                   notifications.
                                                                               XNA Framework GamerServices for notifications.

                                                                               Be very conservative in the frequency and number of toast notifications
                                                                               an application generates. As all applications can access this notification
                                                                               channel, imagine every application on a user’s phone sending a toast
                                                                               notification every time an event happened in the application – many
                                                                               people might find this behavior to be very annoying and visually distract-
                                                                               ing. Follow the guidance closely to prevent user notification overload.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
50       Raw notifications                                                                                                                                                                                                   51




                                                                               Raw notifications are in-application, action-requested notifications. They
                                                                               can be generated by the application itself or sent from a web service.
                                                                               Web service raw notifications only appear within the specified application;
                                                                               there is no system-wide way to display a raw notification.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
52       Navigation, frames and pages                                                                                                                                                                                                           53




                                                                               frame control   Windows Phone 7 applications are based on a Silverlight page model                         Finding the right number of pages
                                                                                               where users can navigate forward through different pages (screens) of                      for an application and defining the
                                                                                               content via links and backward using the Back Button. A goal of this                       navigational map may take some trial
                                                                               page control                                                                                               and error. Mockup the pages and
                                                                                               model is to ease the creation of view-based applications that fit naturally
                                                                                                                                                                                          navigational map of an application
                                                                                               into the Windows Phone 7 page navigation model.                                            and walk through them several times
                                                                                                                                                                                          before coding to minimize or eliminate
                                                                                               The core elements of an application include a top-level container control                  the need to add pages or change the
                                                                                               called a frame that displays pages. Only one frame is allowed per ap-                      map later, when it will be much harder.
                                                                                               plication, but there is no limit to the number of pages. Windows Phone 7
                                                                                               provides frame and page classes to facilitate navigation to separate sec-                  Review the Windows Phone Application
                                                                                                                                                                                          Interface Controls section to consider
                                                                                               tions of content.
                                                                                                                                                                                          how your application content will fit or
                                                                                                                                                                                          be displayed before creating your own
                                                                                               Pages hold discrete sections of content in applications and appear as
                                                                                                                                                                                          custom control for a page.
                                                                                    content    separate screens to the user. Developers can create as many different
                                                                                               pages and construct their UIs as needed to present content within an                       Do not display the Status Bar or
                                                                                               application and then provide navigation to those pages from the frame                      Application Bar when in full-screen
                                                                                               or page if desired. Simple applications may only require one page while                    mode.
                                                                                               more complex ones may require many.

                                                                                               Developers can also implement a full-screen view where the Status Bar or
                                                                                               Application Bar can optionally be displayed, but this must be explicitly de-
                                                                                               fined using the visibility property, as the default is to not display them. The
                                                                                               best practice for a full-screen view is to not display either so that users can
                                                                                               focus on the content experience. Notifications and incoming calls are still
                                                                                               displayed in full-screen mode, even if the Status Bar and/or the Applica-
                                                                                               tion bar is hidden. Examples of full-screen UI implementations are
                                                                                               a screen animation that is embedded within an application.

                                                                                               The page navigation model is a spoke and hub system. This means that
                                                                                               unless developers explicitly add links to other pages within their applica-
                                                                                               tion, users must use the Back Button to navigate to a page that they wish
                                                                                               to view and that users always move forward through the pages. This is
                                                                                               similar to how a web browser displays and navigates web page history.

                                                                                               The system tracks each page a user has visited and places it in what is
                                                                                               called the back stack so that when a user pushes the Back Button, they
                                                                                               are served the last saved page in the back stack. There is no limit to the
                                                                                               number of pages that can be placed in the back stack.

                                                                                               The back stack, combined with the hub and spoke model of page



     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
54       Navigation, frames and pages                                                                                                                                                                                         55




                                                                               navigation, means that a user navigating from page 1 (p1) to
                                                                               page 2 (p2) to p1 to p2 to page 3 (p3) to p1 creates a back
                                                                               stack of p1, p2, p1, p2, p3, p1. If the user modified content in
                                                                               the second instance of p2 in the back stack, but navigates back
                                                                               using the Back Button to the first instance of p2 in the back
                                                                               stack, unless the page refreshes the data, previous changes will
                                                                               not appear on that page, as it is a snapshot of how the user
                                                                               saw that page at that point in navigation. For this reason, think
                                                                               carefully about implementing page-to-page links or buttons
                                                                               that could impact application navigation for the user and con-
                                                                               sider if a page should be refreshed upon entry.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
56       Page title                                                                                                                                                                                                            57




                                                                               Although not an interactive control, the Page Title is used to clearly display            Page Titles are optional. When
                                                                               information for page contents. It appears in default Windows Phone                        displayed, they do not scroll.
                                                                               Developer Tools templates and is optional. Page titles are not actionable.
                                                                                                                                                                         If Page Titles are displayed, reserve
                                                                                                                                                                         the Page Title space in all pages of the
                                                                                                                                                                         application for consistency so the user
                                                                                                                                                                         does not experience differing window
                                                                                                                                                                         sizes across the application.

                                                                                                                                                                         If Page Titles are displayed, the title
                                                                                                                                                                         should be the name of the application
                                                                                                                                                                         or a specific descriptive line of text
                                                                                                                                                                         relevant to the displayed data.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
58       Progress indicator                                                                                                                                                                                                   59




                                                                               The Progress Indicator shows in-application activity related to an activity              Developers who wish to mimic this
                                                                               or a series of events. This is a system-reserved control that is integrated              control should use the determinate
                                                                               into the Status Bar and that can be displayed across multiple application                indicator for tasks such as downloading
                                                                                                                                                                        content and the indeterminate for
                                                                               pages.
                                                                                                                                                                        tasks such as remote connections.
                                                                               The progress indicator can be either determinate or indeterminate.
                                                                               Determinate progress indicators have a beginning and ending point.
                                                                               Indeterminate progress indicators continue until a task is finished.

                                                                               See also the Progress Bar topic in the Windows Phone Application
                                                                               Interface Controls section.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
60       Scroller                                                                                                                                                                                                                                      61




                                                                                                        Page scrolling occurs when content on the screen exceeds the bounds
                                                                                                        of the visible page and a user pans or flicks. When scrolling, visible scroll
                                                                                                        indicators appear on the right side for vertical scrolling and along the
                                                                                                        bottom for horizontal scrolling to indicate whether the content is longer
                                                                                                        or wider than the page, and to represent the current position on the page.
                                                                                                        After page scrolling ends, the scroll indicators fade from view after one
                                                                                                        second has elapsed.
                                                                                  scroll indicator
                                                                                                        The scroll indicators are not user actionable and are an overlay to the
                                                                                   Appears when you
                                                                               interact with the page   content beneath. Their primary function is to provide a hint to the user
                                                                                                        about the page size.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                                                      This is pre-release documentation and is subject to change in future releases.
62       Themes                                                                                                                                                                                                                                                                63




         METRO COLORS                                                                                                            A Theme is a user-selected combination of background and accent colors                  Since users can choose between 20
                                                                                                                                 that personalizes the visual elements on a Windows Phone for that user.                 Themes (22 if the mobile operator or
                                                                                                                                 Only colors are part of a theme. Other elements such as fonts or control                phone manufacturer adds an accent
                                                                                                                                                                                                                         color,) developers should consider
                                                                                                                                 sizing do not change.
                                                                                                                                                                                                                         the possible color combinations if
                                                                                                                                                                                                                         they add colored elements to their
                                                                                                                                 There are two background colors, dark or light, and 10 accent colors,
                                                                                                                                                                                                                         UI. Developers may wish to consult
                                                                                                                                 magenta (FF0097), purple (A200FF), teal (00ABA9), lime (8CBF26), brown                  with graphic designers for color
                                                                                                                                 (996600), pink (FF0097), orange (F09609), blue (1BA1E2), red (E51400)                   combination assistance.
                                                                                                                                 and green (339933). Mobile operators or phone manufacturers may add
                                                                                                                                 one additional system color. The default Theme is a dark background with                Avoid using too much white
                                                                                                                                                                                                                         in applications, such as white
                                                                                                                                 the blue accent color, but mobile operators or phone manufactures can
         METRO BLUE: 1ba1e2         METRO GREEN: 339933        NEW PURPLE: a200ff   NEW VERIDIAN: 00aba9   NEW LIME: 8cbf26
                                                                                                                                                                                                                         backgrounds, as this may have an
                                                                                                                                 override this setting.                                                                  impact on battery life for devices that
                                                                                                                                                                                                                         have organic LED displays.
                                                                                                                                 As a part of the Windows Phone Application Platform, applications auto-
                                                                                                                                 matically take on the selected theme and ensure that system controls and                User-selected, system-wide Theming
                                                                                                                                 UI elements appear consistently across the platform to prevent a jarring,               cannot be modified; only Themes
                                                                                                                                 unsettled user experience.                                                              within applications can be modified.

                                                                                                                                                                                                                         If the foreground or background color
                                                                                                                                 Developers do not have to adjust application controls to match the user
                                                                                                                                                                                                                         of a control is explicitly set, verify
                                                                                                                                 Theme, as these styles will be modified at runtime, but developers can                  that the content is visible in both
                                                                                                                                 override the Theme within an application. For example, developers may                   dark and light themes. If the set color
         METRO ORANGE: f09609       METRO RED: e51400          NEW BROWN: 996600    NEW PINK: e671b8       NEW MAGENTA: ff0097   want to override the Theme of an application if they want to build an                   is not visible, also explicitly set the
                                                                                                                                 application that matches a brand color or content consumed from a web                   background or foreground color to
                                                                                                                                 service. Developers can provide their own resources and override any                    maintain contrast or choose a more
                                                                                                                                                                                                                         appropriate color.
                                                                                                                                 themed properties, but cannot turn off theming. Developers should be
                                                                                                                                 cautious about using too much white in their applications, as this may
                                                                                                                                 have an impact on battery life for devices that have organic LED displays.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
64       Screen transitions and animations                                                                                                                                                                                      65




                                                                               Windows Phone OS 7.0 has many built-in screen transitions and anima-                       Built-in screen transitions and
                                                                               tions that create a sense of a “fluid” user interface. One example is the                  animations are system-reserved and
                                                                               application entry transition, where unrelated application tiles “flip” out of              developers cannot access them but
                                                                                                                                                                          may mimic them.
                                                                               the way, leaving the selected application tile alone for a moment before
                                                                               it too “flips” to reveal the application user interface.                                   If developers want to implement
                                                                                                                                                                          transitions or animations within their
                                                                                                                                                                          application, they must use Silverlight or
                                                                                                                                                                          XNA Framework to create them.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
66       System and system application settings                                                                                                                                                                              67




                                                                               System and System Application Settings are accessed via the App List and                Developers should become familiar
                                                                               tapping on the Settings icon. Users are presented with a Pivot to view set-             with the system settings options and
                                                                               tings choices for the system and for applications that ship with the system.            consider how various user settings
                                                                                                                                                                       could impact UI or application
                                                                               From here, users can personalize the appearance and behavior of their
                                                                                                                                                                       behavior. For example, developers of
                                                                               phone by performing activities such as setting the system Theme, joining                web service-connected applications
                                                                               Wi-Fi networks, or changing the region and language used by the phone.                  should consider application behavior
                                                                                                                                                                       when the user puts the phone in
                                                                               Changes to System and System Application Settings are immediately                       airplane mode.
                                                                               implemented. In some cases, even though the change has happened
                                                                               immediately, the user may not have feedback that the change has                         Application settings must be
                                                                                                                                                                       implemented within the application
                                                                               occurred until an ongoing event is completed or when a future event
                                                                                                                                                                       itself.
                                                                               occurs. Examples would be joining a secure Wi-Fi network or changing
                                                                               the frequency of alarms.

                                                                               Developers do not have access to place application settings within the
                                                                               System and System Application Settings and must implement application
                                                                               settings pages within the application itself. See the Application Settings
                                                                               topic for more information.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
68       Application settings                                                                                                                                                                                                69




                                                                               For applications that have several user-selectable settings, developers                 Immediately implement user-selected
                                                                               should create a settings page within the application and model it after                 Application Settings without a
                                                                               the layout and behaviors in System and System Application Settings.                     confirming dialog box and provide a
                                                                                                                                                                       feedback method to indicate that the
                                                                               Changes to Application Settings should be immediately implemented. This                 change has occurred.
                                                                               means that a “Done”, “OK”, or other confirming dialog is not needed. In                 Avoid creating Application Settings
                                                                               some cases, even though the change has happened immediately, the user                   that have more than 2 pages (screens).
                                                                               may not have feedback that the change has occurred until an ongoing
                                                                               event is completed or a future event occurs. Examples would be joining                  Settings that require more than a
                                                                                                                                                                       single screen should use overlying half
                                                                               a secure Wi-Fi network or changing the frequency of alarms.
                                                                                                                                                                       screens to avoid losing context when
                                                                                                                                                                       the SIP Keyboard is displayed.
                                                                               Keeping Application Settings brief and clear should be a design goal.
                                                                               Complex, multi-page, multi-level Application Settings can frustrate or                  If a task cannot be undone, always
                                                                               confuse users into thinking that they have entered another application                  provide the user with an option to
                                                                               entirely.                                                                               cancel. Text entry is an example.

                                                                                                                                                                       Actions that overwrite or delete
                                                                                                                                                                       data, or are irreversable must have a
                                                                                                                                                                       “Cancel” button.

                                                                                                                                                                       When using additional screens with
                                                                                                                                                                       commit and cancel buttons, clicking
                                                                                                                                                                       those buttons should perform the
                                                                                                                                                                       associated action and return the user to
                                                                                                                                                                       the main settings screen.

                                                                                                                                                                       To keep the heading of settings control
                                                                                                                                                                       panels consistent, the heading for the
                                                                                                                                                                       settings page should look as follows:

                                                                                                                                                                           SETTINGS

                                                                                                                                                                           <CPL Name/ Application Name>

                                                                                                                                                                       Applications that fetch data over
                                                                                                                                                                       the network must have an option to
                                                                                                                                                                       disable data usage.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
70       Input methods                                                                                                                                                                                                        71




                                                                               Windows Phone 7 applications can support multiple methods of input:

                                                                                       • Touch

                                                                                       • On-screen keyboard

                                                                                       • Hardware keyboard

                                                                                       • Microphone

                                                                                       • Phone hardware buttons

                                                                                       • Sensors

                                                                               While not every feature of every input method is available to developers
                                                                               since some are system-reserved, developers should consider each area
                                                                               for applicability to the UI for their applications.

                                                                               Additional topics in this guide provide greater detail for each input
                                                                               method.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
72       Touch input                                                                                                                                                                                                          73




                                                                               Touch input is a core experience of Windows Phone 7 and has inherent                     Do not use gestures as a shortcut to
                                                                               differences from traditional keyboard and mouse input systems. Designed                  a task, and only use a gesture in a
                                                                               for natural and intuitive user interaction, touch input in Windows Phone                 manner as it was intended. See the
                                                                                                                                                                        Supported Touch Gestures topic for
                                                                               7 enables users to interact with application content such as a photo or a
                                                                                                                                                                        gesture definitions.
                                                                               web page. Touch input enables simple and consistent user touch gestures
                                                                               that imitate real life behavior, such as panning on a photo to move it.                  All basic or common tasks should be
                                                                               Single-touch gestures make interaction easier with one hand, but multi-                  completed using a single finger.
                                                                               touch gestures are also available to provide more advanced gesture
                                                                                                                                                                        Touch controls should respond to touch
                                                                               functionality.                                                                           immediately. A touch control that lags
                                                                                                                                                                        or that seems slow when transitioning
                                                                               Application developers should strive to create unique and exciting experi-               will have a negative impact on the user
                                                                               ences that encourage the discovery of content through the use of touch                   experience.
                                                                               gestures. Users should enjoy the experience of navigating through the
                                                                               steps of a task as well as the completion of the task itself. Touch gestures             Provide immediate visual or auditory
                                                                                                                                                                        feedback to indicate interaction
                                                                               should provide a delightful, more colorful, intuitive experience within ap-
                                                                                                                                                                        with the touch control. All actions
                                                                               plications                                                                               should have immediate and obvious
                                                                                                                                                                        consequence by responding while the
                                                                               Touch delights the senses as the user gets to see the interaction match                  gesture happens, not afterwards. A
                                                                               the performance. The touch UI should always have aware and responsive                    bad example would be a user flicking a
                                                                               performance, just like how real world objects respond to touch immedi-                   photo and the movement occurs after
                                                                               ately, and applications on Windows Phone 7 should as well, by performing                 the gesture is completed.
                                                                               the action in real time and by providing immediate feedback that an event
                                                                                                                                                                        For time consuming processes,
                                                                               or process is occurring. Users should not have to wait as it breaks their                developers should elegantly provide
                                                                               immersion, flow, and concentration, especially as their gestures transition              feedback to indicate that something is
                                                                               from one to the other. For example, a pan may turn into a flick or a tap                 happening by using content to indicate
                                                                               can become a double tap, and the user should not be aware that the UI is                 progress, or consider using a progress
                                                                               switching gesture support.                                                               bar or raw notification as a last resort.
                                                                                                                                                                        For example, show more and more of
                                                                               While this topic provides general touch guidance for customizing UI visual               the content as it is being downloaded.
                                                                               elements, Microsoft recommends that developers use standard Metro-in-                    Response to gestures should be
                                                                               spired touch controls that are available in the Windows Phone Developer                  consistent across the phone and
                                                                               Tools and always follow the guidance when creating custom controls. Win-                 within an application. Using the
                                                                               dows Phone Developer Tool controls have been properly sized for touch                    touch controls in the Windows
                                                                               interaction based on the guidelines presented in this section. There are                 Phone Developer Tools will help with
                                                                                                                                                                        maintaining consistency as they have
                                                                               cases where touch UI control sizing will or should vary from the guidance,
                                                                                                                                                                        built-in support for the touch gestures
                                                                               such as with games, depending on the needs of the application.                           discussed in this topic. If developers
                                                                                                                                                                        create custom touch controls, they
                                                                                                                                                                        should respond to gestures in a similar
                                                                                                                                                                        manner.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
74       Touch input                                                                                                                                                                                                         75




                                                                               There are three components to the touch UI:                                             Windows Phone 7 gestures align with
                                                                                                                                                                       Windows desktop gestures. There
                                                                                       1) Touch target – the area that is defined to accept touch input                is some intentional variability due
                                                                                       and is not visible to the user                                                  to the differences in screen size and
                                                                                                                                                                       the Windows desktop support of the
                                                                                       2) Touch element – the visual indicator of the touch target that is             mouse. These differences are mostly
                                                                                       visible to the user                                                             around editing shortcuts, which can
                                                                                                                                                                       be potentially addressed by using
                                                                                       3) Touch control – a touch target that is combined with a touch                 the on-screen keyboard. Applications
                                                                                                                                                                       for Windows Phone 7 should try to
                                                                                       element that the user touches
                                                                                                                                                                       align with the gesture experience of
                                                                                                                                                                       the corresponding Windows desktop
                                                                               Touch targets should not be smaller than 9 mm or 34 pixels square and
                                                                                                                                                                       application.
                                                                               provide at least 2 mm or 8 pixels between touchable controls. In excep-
                                                                               tional cases, controls can be smaller but never more than 7 mm or 26                    Gesture extensibility is not supported.
                                                                               pixels square. The on-screen keyboard and hyperlinks in Windows Phone®                  Developers can only use the supported
                                                                               Internet Explorer® are an exception because they have differently sized hit             gestures and replicate movement as
                                                                                                                                                                       specified.
                                                                               targets.
                                                                                                                                                                       Every touch control should be able
                                                                               Touch targets should be larger than 9 mm when:                                          to be comfortably touched with a
                                                                                                                                                                       finger. This involves manipulating size,
                                                                                       • It is a frequently touched control                                            spacing, location, and visuals to reduce
                                                                                                                                                                       the difficulty in acquiring a target
                                                                                       • Touching it could create a severe error or have a destructive                 through finger touch.
                                                                                       consequence
                                                                                                                                                                       Touch targets should not be smaller
                                                                                       • The user could become frustrated if they cannot touch it                      than 9 mm or 34 pixels square and
                                                                                                                                                                       provide at least 2 mm or 8 pixels
                                                                                       • It is close to the edge of the screen                                         between touchable controls. In
                                                                                                                                                                       exceptional cases, controls can be
                                                                                       • It requires sequential or multiple inputs between adjacent touch              smaller but never more than 7 mm or
                                                                                       controls.                                                                       26 pixels square.

                                                                               For touch and non-touch UI elements that have special sizing or position-               Touch targets should be larger
                                                                                                                                                                       than 9mm when touch controls are
                                                                               ing constraints, layouts may need to be adjusted or additional application
                                                                                                                                                                       frequently touched, create a severe
                                                                               pages may need to be created to accommodate the minimum touch target                    error such as sending an incomplete
                                                                               sizes.                                                                                  message, have a destructive
                                                                                                                                                                       consequence such as deleting data,
                                                                                                                                                                       frustrate the user such as navigating to
                                                                                                                                                                       another screen accidentally, are within
                                                                                                                                                                       3.5 mm of the edge of the screen, or
                                                                                                                                                                       require sequential or multiple inputs
                                                                                                                                                                       between adjacent touch controls.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
76       Touch input                                                                                                                                            77




                                                                                                          The touch target can be larger than the
                                                                                                          touch element, but never be smaller
                                                                                                          than it, and the touch element must
                                                                                                          never be smaller than 60% of the touch
                                                                                                          target.

                                                                                                          Use oblong controls in vertically
                                                                                                          constrained UIs, as these shapes are
                                                                                                          easier to hit. The touch target height
                                                                                                          can be as small as 7 mm as long as the
                                                                                                          width is at least 20 mm.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                               This is pre-release documentation and is subject to change in future releases.
78       Supported touch gestures                                                                                                                                                                                          79




                                                                               A touch gesture involves performing a movement with single or multiple
                                                                               fingers on a touch screen. The tapping of a UI element such as a push
                                                                               button is an example of a touch gesture. Touch gestures are the primary
                                                                               method for a user to interact with the Windows Phone UI.

                                                                               The controls provided in the Windows Phone Developer tools are used as
                                                                               touch interaction elements and are properly sized for touch interaction.

                                                                               The following single and multi-touch gestures are supported in Windows
                                                                               Phone 7:

                                                                               Single-touch:

                                                                                 •   Tap

                                                                                 •   Double Tap

                                                                                 •   Pan

                                                                                 •   Flick

                                                                                 •   Touch and Hold

                                                                               Multi-touch:

                                                                                 • Pinch and Stretch




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
80       Tap                                                                                                                                                                                                                81




                                                                               A tap is a single, brief touch on the screen within a bounded area and
                                                                               back up again.

                                                                               There are two behaviors associated with a tap gesture:

                                                                                 1. Finger down provides touch indication

                                                                                 2. Finger up executes the action

                                                                               A tap also stops any type of content from moving on the screen.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
82       Double tap                                                                                                                                                                                                        83




                                                                               A double tap is two quick taps within a bounded area.

                                                                               A double tap toggles between in and out zoom states of a control or an
                                                                               application. The application determines its current zoomed state and will
                                                                               zoom in or zoom out accordingly. The zoomed-in and zoomed-out states
                                                                               are defined by the application.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
84       Pan                                                                                                                                                                                                                   85




                                                                               A pan is a single finger placed down and moved across the screen in any
                                                                               direction. The pan gesture ends when the finger is lifted from the screen.

                                                                               There are two behaviors associated with a pan gesture:

                                                                                 1. Content can be moved through direct manipulation. It will stick to
                                                                                    and follow the movement of the finger. Controls or the application
                                                                                    can decide what panning direction to support. This movement can
                                                                                    be horizontal, vertical, or any other direction specified. If content is
                                                                                    moved to an in-between state, the content should snap back to the
                                                                                    closest state.

                                                                                 2. A pan can move or reorder a specific item. An item follows the
                                                                                    finger and drops in the new location when the finger is lifted.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
86       Flick                                                                                                                                                                                                                 87




                                                                               A flick is a single finger down moved rapidly in any direction and ends
                                                                               with the finger up. A flick can follow a pan gesture.

                                                                               A flick gesture moves content from one area to another area. The controls
                                                                               or the application can be configured to support specific flicking directional
                                                                               behavior. This can be horizontal, vertical, or another specified direction. If
                                                                               horizontal or vertical paths are specified, movements in other directions
                                                                               will be converted into vertical or horizontal movement.

                                                                               Flick moves the whole canvas, but developers can specify individual
                                                                               objects to be moved instead.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
88       Pinch and stretch                                                                                                                                                                                                  89




                                                                               A pinch and stretch is two fingers down within separate bounded areas
                                                                               followed by the fingers moving closer together (pinch) or further apart
                                                                               (stretch).

                                                                               Pinch and stretch provides continuous zoom on content with the center
                                                                               of the zoom located at the center of the two fingers.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
90       Touch and hold                                                                                                                                                                                                    91




                                                                               Touch and hold is a single finger down within a bounded area for                      The touch and hold gesture should
                                                                               a defined period of time.                                                             generally be used to display a context
                                                                                                                                                                     menu or options page for an item.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
92       Four touch points                                                                                                                                                                                                93




                                                                               Windows Phone supports four simultaneous user touch input points to                  Performance tune applications that
                                                                               enable unique application interactions. Simple examples would be game                support more than two simultaneous
                                                                               or musical instrument applications.                                                  touch input points to ensure
                                                                                                                                                                    application performance does not
                                                                               Screen touches 7 mm or larger in diameter are treated as unique touches              suffer.
                                                                               when the edges of the touch are separated by 3.5mm or more, and all
                                                                               gestures are supported.

                                                                               Every touch point also adds additional processor load, so developers
                                                                               implementing more than two simultaneous touch input points should be
                                                                               aware of potential performance impacts. While Windows Phone supports
                                                                               up to ten touch points, not all hardware screens will support more than
                                                                               four touch points.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                         This is pre-release documentation and is subject to change in future releases.
94       On-screen keyboard                                                                                                                                                                                                    95




                                                                               The On-Screen Keyboard is for text input and opens by sliding up                          When the On-Screen Keyboard is
                                                                               automatically from the bottom of the screen when an editable control                      deployed in an application, it obscures
                                                                               becomes active. When a user taps outside of the edit control, scrolls a list,             content behind it.
                                                                               or presses the Back Button, it closes by sliding down off the bottom of the               If text suggestions are enabled, they
                                                                               screen. If a phone has a Hardware Keyboard, (which is a phone manufac-                    are docked above the On-Screen
                                                                               turer option,) and is deployed, the On-Screen Keyboard will automatically                 Keyboard and obscure content behind
                                                                               close.                                                                                    it.

                                                                               Windows Phone 7 supports only full alphabet layouts such as QWERTY,                       If a developer is using a multi-line
                                                                                                                                                                         edit control, part of it may be hidden
                                                                               AZERTY, and QWERTZ. 12/-20 key layouts are not supported.
                                                                                                                                                                         behind the keyboard. A developer must
                                                                                                                                                                         ensure that the line containing the
                                                                               The phone features several typing aids such as text suggestions that ap-
                                                                                                                                                                         caret is always in view and above the
                                                                               pear above the keyboard, auto-correction, and context-specific keyboard                   keyboard.
                                                                               layouts.
                                                                                                                                                                         Developers should set an input scope
                                                                               The On-Screen Keyboard is 336 pixels tall in portrait view and 256 pixels                 in edit fields to define the keyboard
                                                                               tall in either landscape view. The text suggestion window is 65 pixels tall in            type and enable the appropriate
                                                                               both screen orientations.                                                                 typing aides. For example, if a
                                                                                                                                                                         developer chooses the URL input
                                                                               The developer can define if an edit control is active, and whether or not                 scope, a keyboard layout will be shown
                                                                                                                                                                         featuring a .com key. To accomplish
                                                                               to deploy the On-Screen Keyboard when a page is navigated to.
                                                                                                                                                                         this, you must set the input scope
                                                                                                                                                                         property in your project for the text
                                                                               When an edit control is active, the system will automatically scroll the
                                                                                                                                                                         box or edit control.
                                                                               editable control above the On-Screen Keyboard if it is a control from the
                                                                               Windows Phone Developer Tools.                                                            Only deploy the keyboard
                                                                                                                                                                         automatically if the application page
                                                                               If the keyboard has an enter key and the current edit control is a single                 has no more than two edit controls
                                                                               line, pressing the enter key can either submit the data and close the key-                and the first edit control is a single-line
                                                                               board or change focus to next edit control. If the edit control is multi-line,            edit box. Do not automatically deploy
                                                                                                                                                                         the keyboard if the page has content
                                                                               pressing the enter key will add a new line.
                                                                                                                                                                         or controls that would be obscured
                                                                                                                                                                         behind the keyboard.

                                                                                                                                                                         Do not change the padding inside edit
                                                                                                                                                                         controls or override automatically
                                                                                                                                                                         placed margins of controls places
                                                                                                                                                                         near the edge of the screen. Changing
                                                                                                                                                                         these values can lead to a non-uniform
                                                                                                                                                                         method to select edit controls by
                                                                                                                                                                         touch.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
96       On-screen keyboard                                                                                                                                                                                                     97




                                                                               There are 8 different, context-specific, On-Screen Keyboard types that can
                                                                               be used, depending upon the input scope desired:


                                                                                Keyboard Type             Layout
                                                                                Default                   Standard QWERTY layout
                                                                                Text                      Standard layout with ASCII based emoticons
                                                                                Email Address             Standard layout with .com and @ keys
                                                                                Phone Number              Typical 12-key layout
                                                                                Web Address               Standard layout with .com key and customized
                                                                                                          Enter key
                                                                                Maps                      Standard layout with a customized Enter key
                                                                                Search                    Semi-transparent layout with a Search and
                                                                                                          .com key
                                                                                SMS Address               Standard layout with easy access to phone
                                                                                                          number layout


                                                                               Developers cannot define their own keyboard types or modify existing
                                                                               ones.

                                                                               The Default, Text, and Maps keyboard types all automatically deploy with
                                                                               the text suggestion window.

                                                                               If an application takes up all or most of the screen area or has crowded
                                                                               edit controls, it might be difficult for the user to tap outside of the control
                                                                               to close the On-Screen Keyboard and view more content. The applica-
                                                                               tion can automatically close the keyboard when the user tries to view the
                                                                               content rather than type, such as when the user scrolls, when the active
                                                                               edit control moves outside of the viewable area, or when the user presses
                                                                               the Back Button. Another solution is to implement an edit view and a read
                                                                               view and open or close the keyboard depending upon the view state.




     Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
             ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
98       Hardware keyboard                                                                                                                                                                                                                                                                                        99




                                                                                                                                                                                              ^       [       ]       {       }         <       >      €        £       ¥
                                                                                                                                                                                               1          2       3       4       5      6       7          8       9    0
                                                                                                                                                                  A Hardware Keyboard is an optional component that phone manufactur-                               Hardware keys may not be used to
                      q      w       e           r       t       y   u           i   o       p
                                                                                                   1      2       3       4       5       6       7       8       ers may 0
                                                                                                                                                                   9                           *       -
                                                                                                                                                                           add. They may come available in +          =              ~
                                                                                                                                                                                                                designs such - a pull out bar,
                                                                                                                                                                                                                              as                       ©        ®move focus, scroll lists, or navigate
                                                                                                                                                                                                                                                                    ™
                                                                                                   q      w           e       r       t       y   u           i     o       p                   q       w       e       r      t      y     u               i    o
                                                                                                                                                                                                                                                                 maps p web pages.
                                                                                                                                                                                                                                                                      or
                                                                                                                                                                  a vertical slide configuration, or even a flip or swivel orientation.
                                                                                                   @      #       $       %       &       (       )               /                     @       #       $      %      &      (    )
                                                                                                                                                                  Windows Phone 7 supports only full alphabet layouts such as QWERTY,                          /
                      a      s       d           f   g       h           j   k           l         a          s       d       f       g       h       j   k          l                     a      s       d      f      g       h    j                     k        l
                                                                                                                                                                  AZERTY, and QWERTZ. 12/-20 key layouts are not supported.

                                                                                                          !       ;       :       ‘       “       ?       -                                           !     ;     :      ‘      “      ?
                                                                                                                                                                                                                                                       `m
                      caps                                                                         caps                                                                                        caps

                             z       x       c       v       b       n       m           enter                                                                    The Hardware Keyboard is only used for typing letters, accented letters,
                                                                                                                                                                     enter                                                                                          enter
                                                                                                              z       x   c           v       b   n       m                                             z     x     c      v     b      n
                                                                                                                                                                  numbers and symbols, and cannot be used to control the UI. The hard-
                                                                                                                                                                  ware keyboard can include arrow keys that can move the caret within an
                          sym            ,               space                   .                fn     äé          ,               space                   .   edit control. However, thesefn
                                                                                                                                                                    sym                                          ,
                                                                                                                                                                                                 arrow äé must not be used to move focus,
                                                                                                                                                                                                       keys                space                            .          sym
                                                                                                                                                                  scroll lists, or navigate maps or web pages.

                                                                                                                                                                  The following keys will always be available on the Hardware Keyboard:

                                                                                                                                                                           • Letters (A-Z), Enter, Space, Backspace, Shift, emoticon, SYM,
                      ^      [       ]       {       }       <       >       €       £       ¥                                                                             period, and comma.
                       1         2       3       4       5       6   7           8       9   0
                                                                                                                                                                           • Numbers (0-9) as either a primary or secondary character.
                      *      -       +       =       -       ~               ©       ®       ™
p                     q      w           e       r       t       y   u           i   o       p                                                                             • Accent key for German, French, Italian, and Spanish keyboards.

                   @         #       $       %       &       (       )              /                                                                            The following keys are not supported or allowed on the Hardware Key-
                       a         s       d       f       g       h       j       k       l                                                                        board:

                                     ;       :                                                                                                                             • A directional pad or any other navigation specific hardware.
r
                      caps
                             !                       ‘       “       ?
                                                                             `m          enter
                                 z       x       c       v       b   n
                                                                                                                                                                           • The “OK & Home” and the “Send & End” hardware soft keys.

ym                    fn     äé          ,               space                   .          sym                                                                           • The keys Delete, Insert, Control (CTRL), Alt, Caps Lock, Tab,
                                                                                                                                                                           page up and down, and escape (ESC).

                                                                                                                                                                           • The Start, Search, and Back Buttons as part of the keyboard.

                                                                                                                                                                  The shift key allows for typing capital letters. There are 3 shift modes: On,
                                                                                                                                                                  Off, and Lock (Caps Lock).

                                                                                                                                                                  The emoticon key brings up the emoticons picker.

                                                                                                                                                                  The accent key is used to type accented letters. When the accent key is
                                                                                                                                                                  pressed, it adds an accent letter left of the caret. Multiple presses cycle




          Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
                  ®
                                                                                                                                                                                                                                      This is pre-release documentation and is subject to change in future releases.
100       Hardware keyboard                                                                                                                                                                                                                                                                                101




                                                                                                   ^      [       ]       {       }       <       >       €       £       ¥
                                                                                                   1          2       3       4       5       6   7           8       9   0
                                                                                                                                                                  through the available accents. The function key (FN) plus the accent key
p
                      1      2       3       4       5       6       7       8       9       0     *      -       +       =       -       ~               ©        ®      ™
                                                                                                                                                                  cycles back to the previous accent. Pressing and holding the accent key
                      q      w           e       r       t       y   u           i   o       p     q      w           e       r       t       y   u           i     o      p
                                                                                                                                                                  displays an accent picker.
                   @         #       $       %       &       (       )              /             @      #       $       %       &       (       )              /
                                                                                                                                                                  Characters that are not available on the keyboard are accessible via a
                      a          s       d       f       g       h       j   k           l         a          s       d       f       g       h       j       k     l
                                                                                                                                                                  symbol picker that is launched by pressing the symbol key (SYM). Press-
                                     ;       :                               -                                    ;       :                                       ing and holding the SYM key displays the language picker. FN and SYM
                      caps
                             !                       ‘       “       ?
                                                                                         enter
                                                                                                   caps
                                                                                                          !                       ‘       “       ?
                                                                                                                                                          `m        enter
                                 z       x   c           v       b   n       m                                z       x       c       v       b   n               switches to the next language.

                                                                                                                                                                  A Status Bar input indicator displays shift mode, FN mode, and active
                      fn     äé          ,               space                   .          sym   fn     äé          ,               space                   .      sym
                                                                                                                                                                  language.

                                                                                                                                                                  Keyboard keys can be overloaded. Pressing and holding a key or using the
                                                                                                                                                                  FN key allows the user to access secondary functionality.

                                                                                                                                                                  When the symbol picker, accent picker, or language picker is launched,
                                                                                                                                                                  they are displayed at the bottom part of the screen. They disappear after
                                                                                                                                                                  a selection is made or after one second has elapsed.

                                                                                                                                                                  Applications can use an API to query if the Hardware Keyboard is available
                                                                                                                                                                  or deployed and act accordingly.

                                                                                                                                                                  When the Hardware Keyboard is deployed, the On-Screen Keyboard will
                                                                                                                                                                  close. If the device has a fixed hardware keyboard, the On-Screen Key-
                                                                                                                                                                  board will not be displayed.

                                                                                                                                                                  Text suggestions are also available for the Hardware Keyboard.




          Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
                  ®
                                                                                                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
102       Microphone                                                                                                                                                                                                   103




                                                                                The Windows Phone 7 microphone has a frequency range from 150 Hz to
                                                                                7 kHz.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                      This is pre-release documentation and is subject to change in future releases.
104       Phone hardware buttons                                                                                                                                                                                            105




                     1                                                          A Windows Phone has several hardware buttons positioned around the                    See specific Phone Hardware Button
                                                                                device. Each button provides a unique function that may adjust or impact              topics for guidance on how each
                                                                                a running application.                                                                button can affect the UI.
             2
                                                                                        1) Power/sleep

                                                                                        2) Volume up and volume down

                                                                                        3) Camera

                                                                                        4) Back

                                                                                        5) Start

                                                                                        6) Search

                                                                                The Back, Start, and Search buttons can optionally be implemented as
                                                                                capacitive touch buttons by phone manufacturers.




                                                       3


                     4            5             6




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
                 ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
106       Start button                                                                                                                                                                                                       107




                                                                                When a user presses the Start button, it will take them to Start in the                Developers do not have access to
                                                                                phone user interface. Applications will receive an obscured event to pause.            modify the Start button behavior
                                                                                                                                                                       and their applications should always
                                                                                                                                                                       be prepared to receive an obscured
                                                                                                                                                                       event to pause after the Start button is
                                                                                                                                                                       pushed.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
108       Search button                                                                                                                                                                                                      109




                                                                                The hardware Search Button will launch the Bing search experience for the              Use the SearchTask Class to launch Bing
                                                                                user to find content from anywhere on the device. The search experience                search from within an application.
                                                                                will vary depending on the context of the user. The Bing search experi-
                                                                                ence can be launched from Start, the App List, system applications, and
                                                                                third-party applications. From select system applications such as Outlook,
                                                                                an in-application search can be launched.

                                                                                Developers cannot replicate in-application search, but can mimic a Search
                                                                                Button push to launch the Bing search using the SearchTask Class.

                                                                                Developers cannot modify or change the behavior of the Search Button.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
110       Back button                                                                                                                                                                                                        111




                                                                                The hardware Back Button is used to navigate back on pages (screens)                   See the Navigation, Frames and Pages
                                                                                within an application or between applications. The application allows the              topic for additional guidance.
                                                                                framework to perform the operation when the button is pressed. Also, the
                                                                                                                                                                       Developers should only implement
                                                                                Back Button can be used to close menus, dialogs, navigate to a previous                Back Button behaviors that navigate
                                                                                page, exit a search operation, or even switch applications. However, the               back or dismiss context menus
                                                                                principal usage is to navigate from the current page to the previous page.             or modal dialog boxes. All other
                                                                                                                                                                       implementations are prohibited.
                                                                                See the Navigation, Frames, and Pages topic for more information about
                                                                                the page navigation model in Windows Phone 7.

                                                                                When a user navigates back out of the root page of an application, the
                                                                                application will terminate.

                                                                                The Back Button will not work as a backspace key to delete text input.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
112       Power button                                                                                                                                                                                                      113




                                                                                The power button has several different behaviors depending on the state               Developers do not have access to
                                                                                of the phone:                                                                         modify the Power button behavior and
                                                                                                                                                                      their applications should always be
                                                                                                                                                                      prepared to receive an obscured event
                                                                                                                                                                      to pause or terminate after the Power
                                                                                                                                                                      button is pushed.



                                                                                Phone State                                  Power Button Push Duration                Behavior
                                                                                Powered off                                  Any                                       Boots the phone
                                                                                Powered on, screen unlocked, screen on       < 3 seconds                               Locks and turns off screen
                                                                                Powered on, screen locked, screen on         < 3 seconds                               Turns screen off
                                                                                Powered on, screen locked, screen off        < 3 seconds                               Turns screen on
                                                                                Any powered on state                         > 3 seconds and < 8 seconds               Turns phone off via software shutdown
                                                                                Any powered on state                         > 8 seconds                               Turns phone off via hardware shutdown




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
114       Volume buttons                                                                                                                                                                                                        115




                                                                                The hardware Volume Buttons are used to adjust the volume of either the
                                                                                in-call conversation volume (if a phone call is active), or else the overall
                                                                                device volume (if there is no active phone call), which includes music,
                                                                                radio, video, application, ringtone, and system sound volume.

                                                                                Pressing either Volume Button will expose the volume control, a 93 pixel
                                                                                tall overlay at the top of the screen and may contain audio transport
                                                                                controls such as previous and next if there is a media player active. It will
                                                                                always contain a control to toggle the ringer setting on and off. This con-
                                                                                trol affects the playback of the system sounds that the user can control in
                                                                                the Ringtone and Sound settings screen.

                                                                                If the phone is locked, the Volume Buttons are still active when media is
                                                                                playing or there is a phone call in progress.

                                                                                The buttons operate system-wide and volume settings carry through
                                                                                into the application. This means that developers cannot have volumes set
                                                                                higher than the user settings or override mute.

                                                                                Pressing and holding a Volume Button will do a key press repeat and
                                                                                incrementally increase or decrease the volume depending on the button
                                                                                pushed.

                                                                                When a user receives a phone call, touching either Volume Button will
                                                                                silence the ringtone.

                                                                                Developers cannot edit the audio transport controls overlay or override
                                                                                the Volume Buttons behaviors.

                                                                                Developers can control the volume of the audio stream they provide to
                                                                                the system, including muting it.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
116       Camera button                                                                                                                                                                                                       117




                                                                                The Camera Button is a dual action button supporting full and half button
                                                                                press modes. When a user does a full button press, the phone will launch
                                                                                the camera application. If the user does a half button press after the cam-
                                                                                era application has launched, the auto-focus feature is enabled.

                                                                                Within the Camera application, pushing the Camera Button will take
                                                                                a photo when in camera mode or start or stop video capture when in
                                                                                video mode.

                                                                                If the user presses and holds the camera button for more than one
                                                                                second when the device is in stand-by (screen off) or locked, the camera
                                                                                application will launch.

                                                                                Applications can programmatically launch the camera application by
                                                                                calling the CameraCaptureTask Class.

                                                                                Developers cannot modify or change the behavior of the Camera Button.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
118       Sensors                                                                                                                                                                                                              119




                                                                                Every Windows Phone 7 phone contains the following sensors:

                                                                                        • Accelerometer

                                                                                        • A-GPS

                                                                                        • Proximity Sensor

                                                                                        • Camera

                                                                                        • Compass

                                                                                        • Light Sensor

                                                                                While not every sensor is available to developers since some are system-
                                                                                reserved, developers should consider each area for applicability to the UI
                                                                                for their applications.

                                                                                Additional topics in this guide provide greater detail for each sensor.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
120       Accelerometer                                                                                                                                                                                                      121




                                                                                The Windows Phone 7 accelerometer is an electromechanical device                       Developers creating applications or
                                                                                that measures acceleration caused by gravity or external sources to an                 games that require a higher level
                                                                                accuracy of +/- 5 degrees. This 3D motion sensor provides continuous                   of precision and sensitivity from
                                                                                                                                                                       the accelerometer should calibrate
                                                                                information about the forces being applied to the device in the X, Y, and
                                                                                                                                                                       accelerometer data.
                                                                                Z planes.

                                                                                A Windows Phone can leverage this feature to create sophisticated experi-
                                                                                ences for the end user by calling managed APIs that are easy and flexible
                                                                                to use. Developers can offer scenarios such as automatic screen rotation,
                                                                                tilt-to-scroll, and gaming control within their applications.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
122       A-GPS                                                                                                                                                                                                             123




                                                                                A-GPS (assisted global positioning system) is used to determine the
                                                                                location of the phone and provides information to Location Services
                                                                                on the phone.

                                                                                There are no direct UI elements associated with A-GPS, but develop-
                                                                                ers have access to Location Services in the System.Device.Location
                                                                                namespace.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
124       Proximity sensor                                                                                                                                                                                                    125




                                                                                The Proximity Sensor is used to power off the screen to conserve battery
                                                                                when an object is detected within 15 mm of the sensor during a phone
                                                                                call. Phone manufacturers have discretion as to where to place the sensor,
                                                                                so its location may vary from phone to phone.

                                                                                The sensor remains active when the phone is being used in speakerphone
                                                                                mode, so it is possible to accidentally power off the screen if a finger or
                                                                                object covers the sensor.

                                                                                Developers do not have access to the Proximity Sensor or its behaviors.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
126       Camera                                                                                                                                                                                                           127




                                                                                All Windows Phone 7 phones have a five megapixel or larger camera with
                                                                                auto-focus and flash, and a 4:3 aspect ratio image sensor.

                                                                                There are no direct UI elements associated with the Camera, but develop-
                                                                                ers have access to the Camera in the Microsoft.Phone.Tasks namespace.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
128       Compass                                                                                                                                                                                                           129




                                                                                The Compass is used to determine navigation direction relative to the
                                                                                Earth’s magnetic field.

                                                                                Developers do not have access to the Compass or its behaviors.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
130       Light sensor                                                                                                                                                                                                                              131




                                                                                                     The Light Sensor is used to determine the intensity of light up to 4,000 lux
                                                                                                     and helps in automatically adjusting screen brightness. Developers do not
                                                                                                     have access to the Light Sensor or its behaviors and there are no UI ele-
                                                                                                     ments associated with it.




                                                                                Image Source: NASA




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                                                   This is pre-release documentation and is subject to change in future releases.
132       Output methods                                                                                                                                                                                                      133




                   1                                                            Windows Phone 7 applications have multiple methods of output:                           If developers or designers require
                                                                                                                                                                        precise millimeter sizing for UI
                                                                                        1) Audio output jack                                                            elements, consult the display
                                                                                                                                                                        specifications provided by original
                                                                                        2) On-device speaker                                                            equipment manufacturers for the
                                                                                                                                                                        proper pixels to millimeters conversion
                                                                                        3) On-device screen                                                             factor. See the topic, A Note on Units
                                                                                                                                                                        – Pixels vs. Millimeters for more
                                                                                        4) Vibration                                                                    information.

                                                                                Developers should consider each area for applicability to the UI for their              Consult the display specifications
                                                                                applications.                                                                           provided by original equipment
                                                                                                                                                                        manufacturers for screen bit depth.
                                3                                               All Windows Phone 7 phones will have at least 16-bit (5 red, 6 green, 5
                                                                                blue) WVGA screens at 800 x 480 pixel resolution, no matter the screen
                                                                                size. Phone manufacturers have the option to use higher bit depth
                                                                                screens, but there is no programmatic way to query for bit depth.

                                                                                The vibration unit can be turned on or off by the user in the Ringtones
                                                                                and Sounds preferences and this setting cannot be overridden.

                                                 4




                        2




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
134       FM radio                                                                                                                                                                                                               135




                                                                                All Windows Phone 7 phones have a built-in FM radio tuner. Develop-                        Use the base Silverlight controls in the
                                                                                ers will need to create the UI for the service, as there are no built-in UI                Windows Phone Developer Tools to
                                                                                components.                                                                                build application UIs.

                                                                                                                                                                           Applications cannot lock the frequency
                                                                                                                                                                           or region of the FM radio tuner;
                                                                                                                                                                           therefore, developers should poll the
                                                                                                                                                                           API prior to displaying the UI to refresh
                                                                                                                                                                           the frequency or region values of the
                                                                                                                                                                           tuner in case another application has
                                                                                                                                                                           changed the values.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                                This is pre-release documentation and is subject to change in future releases.
136       Windows phone application interface controls                                                                                                                                                                          137




                                                                                The Silverlight® UI framework delivered on Windows Phone 7 is the next                    If you need to create your own user
                                                                                step in the evolution of Silverlight and enables a new class of mobile                    actionable control, please adhere to
                                                                                design experiences. Silverlight harnesses the power of .NET and includes                  the general Metro styling guidance
                                                                                                                                                                          as discussed in the first section of this
                                                                                numerous controls, rich layout, and styling. It also supports vector-based
                                                                                                                                                                          guide, Philosophy of the UI and Design.
                                                                                graphics and animation APIs. Select Silverlight controls have been themed
                                                                                with a new exciting look explicitly for the Windows Phone 7 platform. De-                 Use the Windows Phone Design
                                                                                velopers can use their previous Silverlight and .NET development experi-                  Templates as visual guides for creating
                                                                                ence to facilitate working with this mobile control set and apply it to their             custom controls that mimic system
                                                                                                                                                                          controls.
                                                                                Windows Phone 7 applications.

                                                                                The following topics list the Silverlight controls in the Windows Phone De-
                                                                                veloper Tools, including controls that do not have UI components but can
                                                                                affect other parts of the UI. Refer to specific control topics for a detailed
                                                                                overview and guidance for each. This guide only focuses on controls that
                                                                                impact the phone UI and does not exhaustively cover every Silverlight
                                                                                control available in the Windows Phone Developer Tools, as UI guidance
                                                                                exists elsewhere for those controls.

                                                                                User set system theming flows down automatically into all controls avail-
                                                                                able in the Windows Phone Developer Tools.

                                                                                Developers may also create their own controls as needed and these con-
                                                                                trols may replicate system controls that are not available as a part of the
                                                                                Windows Phone Developer Tools. See the Visual Design Resources topic
                                                                                for graphic design templates for system controls that developers may wish
                                                                                to mimic.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
138       Border                                                                                                                                                                                                           139




                                                                                Provides a border, background, or both to another control. A border can              Do not hard-code the border width.
            button                                                              contain only one child element.                                                      Use the phone border width to support
                                                                                                                                                                     screen scaling.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
140       Push button                                                                                                                                                                                                          141




                                                                                A button initiates an action when a user taps on it. The shape is usually                Buttons support the tap gesture.
                                                                                rectangular and the standard layout allows for either text or an image
                                                                                                                                                                         If using text, buttons should never
                                                                                to be displayed.
                                                                                                                                                                         include more than two words.
                                                                                Buttons support rest, press, and disabled states.                                        Text should be concise and typically a
                                                                                                                                                                         verb.
                                                                                There is no visible focus state.
                                                                                                                                                                         When used in dialog boxes, “OK” or
                                                                                                                                                                         positive actions should be on the left,
                                                                                                                                                                         and “Cancel” or negative actions on the
                                                                                                                                                                         right.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
142       Canvas                                                                                                                                                                                                               143




                                                                                Provides a surface to display child elements at specific coordinates in the              Canvas uses a pixel-based layout
                                                                                canvas.                                                                                  and can provide better performance
                                                                                                                                                                         than using the grid control for deeply
                                                                                                                                                                         embedded or nested controls in layout
                                                                                                                                                                         passes for applications that do not
                                                                                                                                                                         change orientations. Use the grid
                                                                                                                                                                         control if the application frame needs
                                                                                                                                                                         to grow, shrink, or rotate.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
144       Check box                                                                                                                                                                                                          145




                                                                                Check boxes are used to define a binary state and can be used in groups                Even though the control can support
                                                                                to display multiple choices from which the user can select one or more                 multiple lines, limit text to either a
                                                                                choices. A user can either tap a check box or the accompanying text to                 one or two line format for design
                                                                                                                                                                       consistency.
                                                                                select an option.
                                                                                                                                                                       If there are several choices to present
                                                                                The control supports an indeterminate state that can be used to com-                   to a user, consider using a scroll viewer
                                                                                municate checked and unchecked status simultaneously for a number of                   and adding a stack panel.
                                                                                underlying items.
                                                                                                                                                                       Microsoft does not recommend the
                                                                                Check boxes support rest, press, and disabled states for both selected                 use of the indeterminate state because
                                                                                and un-selected settings.                                                              the user could be confused about
                                                                                                                                                                       which of the underlying property items
                                                                                There is no visible focus state.                                                       is actually checked or unchecked. A
                                                                                                                                                                       more appropriate alternative is to map
                                                                                                                                                                       the data sources for that checkbox to
                                                                                                                                                                       separate checkboxes or use a multi-
                                                                                                                                                                       selection list, particularly if a dynamic
                                                                                                                                                                       data set is used.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
146       Content control                                                                                                                                                                                                   147




                                                                                Represents a control with a single piece of content of any type. Many
                                                                                controls derive from Content Control and can contain objects, such as
                                                                                a Button.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
148       Content presenter                                                                                                                                                                                     149




                                                                                Displays the content of a Content Presenter.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                               This is pre-release documentation and is subject to change in future releases.
150       Grid                                                                                                                                                                                                                  151




                                                                                Provides a surface that is composed of rows and columns to display child                  Using the grid control for deeply
                                                                                elements. You define the rows and columns for a grid, then, assign objects                embedded or nested controls in layout
                                                                                to a specific row or column in the grid. You can optionally display gridlines.            passes for applications that do not
                                                                                                                                                                          change orientations or grow or shrink
                                                                                                                                                                          the viewable area can lead to degraded
                                                                                                                                                                          performance. Use the canvas control if
                                                                                                                                                                          the application frame does not need to
                                                                                                                                                                          grow, shrink, or rotate.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
152       Hyperlink                                                                                                                                                                                                         153




                                                                                The hyperlink control allows you to embed hypertext links in a page and               Only use the Hyperlink control for
                                                                                specify a navigation target.                                                          navigation, not to trigger events, or
                                                                                                                                                                      hide or show additional text. To trigger
                                                                                The control supports rest, press, and disabled states.                                events, use a button control instead.

                                                                                There is no visible focus state.                                                      Avoid placing hyperlinks close to each
                                                                                                                                                                      other. Doing so may make it difficult
                                                                                                                                                                      for the user to select an individual link
                                                                                                                                                                      without zooming.

                                                                                                                                                                      Hyperlink controls should only use a
                                                                                                                                                                      disabled state if the state is temporary,
                                                                                                                                                                      such as other system processes are
                                                                                                                                                                      occurring, or if the state can be
                                                                                                                                                                      changed to enabled by a user action.

                                                                                                                                                                      A link that is disabled and cannot be
                                                                                                                                                                      enabled by user action should not be
                                                                                                                                                                      displayed.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
154       Image                                                                                                                                                                                                              155




                                                                                The image control displays an image in PNG or JPEG format and displays
                                                                                indexed images with 1, 4, or 8 bit color-depth or true color images with 24
                                                                                or 32 bit color-depth.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
156       InkPresenter                                                                                                                                                                                                        157




                                                                                InkPresenter provides a primitive drawing surface to collect strokes or                 InkPresenter does not support
                                                                                Bézier curves within a canvas control.                                                  handwriting recognition.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
158       ListBox                                                                                                                                                                                                            159




                                                                                A ListBox control contains a collection of items. You can populate the
                                                                                control by binding it to a data source or displaying unbound items. The
                                                                                ListBox is an items control, which means that you can populate it with
                                                                                items that contain text or other controls.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
160       MediaElement                                                                                                                                                                                                     161




                                                                                A MediaElement control provides a rectangular region that can display                Do not use this control for sound
                                                                                video on its surface, or plays audio if no video is present.                         effects in your application; use the XNA
                                                                                                                                                                     Framework SoundEffect API instead or
                                                                                                                                                                     your application will fail certification.
                                                                                                                                                                     This is because the MediaElement will
                                                                                                                                                                     interrupt and halt any audio that is
                                                                                                                                                                     playing in the background.

                                                                                                                                                                     Do use this control for full-screen video
                                                                                                                                                                     playback, or in other situations where
                                                                                                                                                                     background audio would be halted.

                                                                                                                                                                     Only one MediaElement can be active
                                                                                                                                                                     at a time.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
162       Multi scale image                                                                                                                                                                                                 163




                                                                                Multi Scale Image enables users to open a multi-resolution image that can             Developers must implement gestures
                                                                                be scaled and repositioned for detailed viewing. By default, an image that            when using this control because it does
                                                                                is loaded by Multi Scale Image zooms (expands) when first loaded. This                not have any gesture support built-in.
                                                                                behavior can be disabled by setting the UseSprings property to false.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                           This is pre-release documentation and is subject to change in future releases.
164       Panorama                                                                                                                                                                                                              165




                                                                                Panorama applications are a part of the core Windows Phone OS 7.0                         Microsoft will provide a control
                                                                                visual experience. Unlike standard applications that are designed to fit                  and design template to support
                                                                                within the confines of the phone screen, these applications offer a unique                building Panoramas at a later date.
                                                                                                                                                                          Microsoft recommends that designers
                                                                                way to view controls, data, and services by using a long horizontal canvas
                                                                                                                                                                          and developers wait to implement
                                                                                that extends beyond the confines of the screen. These inherently dynamic                  Panoramas until final guidance is
                                                                                applications use layered animations and content so that layers smoothly                   available and to use the following
                                                                                pan at different speeds, similar to parallax effects.                                     information for planning purposes
                                                                                                                                                                          only.
                                                                                Thumbnails are a main element of the panoramic view. They link to con-
                                                                                tent or media that is consumed outside of the panoramic experience.                       For Panoramas:

                                                                                                                                                                          Use either a single color background
                                                                                Elements of a panoramic application serve as the starting point for more
                                                                                                                                                                          or an image that spans the entire
                                                                                detailed experiences. The element flow example is not indicative of plat-                 panorama. If you decide to use an
                                                                                form functionality, but rather the end-user experience. As an example,                    image, any UI image type that is
                                                                                while an application that is launched from a panorama application might                   supported by Silverlight is acceptable,
                                                                                be what the end-user sees; the launched application is actually just a dif-               but JPEGs are recommended, as they
                                                                                ferent view of the same panorama application.                                             generally have smaller file sizes than
                                                                                                                                                                          other formats.
                                                                                The user interface consists of layer types that operate with their own inde-
                                                                                                                                                                          You can use multiple images as a
                                                                                pendent motion logic: a background image, a panorama title, panorama                      background, but you should note that
                                                                                section titles, and panorama sections. Thumbnails complete the experi-                    only one image should be displayed at
                                                                                ence and are a main element of the panoramic view. They link to content                   any given time.
                                                                                or media that is consumed outside of the panoramic experience.
                                                                                                                                                                          Background images should be between
                                                                                The background image is the lowest layer and is meant to give the                         480 x 800 pixels and 1024 x 800
                                                                                                                                                                          pixels (width x height) to ensure good
                                                                                panorama its rich magazine-like feel. Usually a full-bleed image, the
                                                                                                                                                                          performance, minimal load time, and
                                                                                background is potentially the most visual part of the application.                        no scaling.

                                                                                The panorama title is the title of the overall panorama application. It is                Use a 16 x 9 aspect ratio for a
                                                                                meant to let the user identify the application and should be visible no                   panorama application that has four
                                                                                matter how they enter the application.                                                    sections.

                                                                                Panorama sections are the component of the panoramic application that                     Use a transparent black or white filter
                                                                                                                                                                          to aid text legibility.
                                                                                encapsulates other controls and content. Panorama sections move at the
                                                                                same rate as the finger pan or flick.                                                     Use a rate of motion that is relative
                                                                                                                                                                          to the panning gesture, which is
                                                                                A panorama section title is optional for any given panorama section.                      determined by the total width of the
                                                                                                                                                                          top content layer relative to the width
                                                                                                                                                                          of the background image.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
166       Panorama                                                                                                                                               167




                                                                                                           Wrap off and then back onto the visible
                                                                                                           area when the user pans beyond the
                                                                                                           width of the image.

                                                                                                           For Panorama Titles:

                                                                                                           Use either plain text or images, such as
                                                                                                           a logo, for the panorama title. You can
                                                                                                           also use multiple elements, such as a
                                                                                                           logo and text (or other UI elements).

                                                                                                           Ensure that the font or image
                                                                                                           color for the title works across the
                                                                                                           entire background and that it is not
                                                                                                           dependent on the background image
                                                                                                           for visibility. Use the system fonts
                                                                                                           and styles unless there is a need for a
                                                                                                           specific branded experience that uses a
                                                                                                           different font, size or color.

                                                                                                           Use the same panorama title for the
                                                                                                           launch tile in Start for consistency.

                                                                                                           Avoid animating the panorama title or
                                                                                                           dynamically changing its size.

                                                                                                           Use a rate of motion for the panorama
                                                                                                           title that is slow relative to the topmost
                                                                                                           content layer, and slower than the
                                                                                                           background art.

                                                                                                           For Panorama Section Titles:

                                                                                                           Use plain text for panorama section
                                                                                                           titles. Alternatively, you can use
                                                                                                           images. You can use multiple elements,
                                                                                                           such as an image and text (or other
                                                                                                           UIElements).

                                                                                                           Ensure that the panorama section title
                                                                                                           is not dependent on the background
                                                                                                           art.

                                                                                                           Avoid animated panorama section
                                                                                                           titles because the title will be moving.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                This is pre-release documentation and is subject to change in future releases.
168       Panorama                                                                                                                                               169




                                                                                                           Span the entire panorama section
                                                                                                           with panorama section titles, even if
                                                                                                           multiple controls are present.

                                                                                                           Animate panorama section titles off
                                                                                                           the screen when a user navigates to a
                                                                                                           new section.

                                                                                                           A panorama section’s title should act
                                                                                                           differently depending on whether the
                                                                                                           section’s width is greater than or less
                                                                                                           than the width of the screen. If the
                                                                                                           section’s width is greater, there should
                                                                                                           be a horizontal animation. That is, the
                                                                                                           title should not stay in the top left of
                                                                                                           the section, but rather it should move
                                                                                                           at a different speed along the top while
                                                                                                           the panorama is moving. Under these
                                                                                                           circumstances, there should not be
                                                                                                           vertical scrolling. Alternatively, if the
                                                                                                           section’s width is less than the screen
                                                                                                           width, the title should always be set to
                                                                                                           the top left of the section. Under these
                                                                                                           circumstances, there should not be
                                                                                                           any horizontal animation and, the title
                                                                                                           should move along with the content.

                                                                                                           For Panorama Sections:

                                                                                                           Vertical scrolling through a list or grid
                                                                                                           in panorama sections is acceptable as
                                                                                                           long as it is within the confines of the
                                                                                                           section and is not in parallel with a
                                                                                                           horizontal scroll.

                                                                                                           Animate panorama sections off the
                                                                                                           screen when a user navigates to a new
                                                                                                           section.

                                                                                                           Consider hiding panorama sections
                                                                                                           until they have content to display.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                This is pre-release documentation and is subject to change in future releases.
170       Panorama                                                                                                                                               171




                                                                                                           For thumbnails, use cropped images
                                                                                                           that highlight an identifiable subject
                                                                                                           rather than an entire image. If the
                                                                                                           image is not identifiable without text,
                                                                                                           up to two lines of text can be used to
                                                                                                           identify the content.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                This is pre-release documentation and is subject to change in future releases.
172       Password box                                                                                                                                                                                                       173




                                                                                The Password Box control displays content and allows the user to type or               To add an input scope for an on-screen
                                                                                edit the contents. An entered character appears briefly and is obfuscated              keyboard, configure the input scope
                                                                                to a bullet when the next character is entered or after two seconds.                   property on the password box control.

                                                                                                                                                                       Gestures supported:
                                                                                The on-screen keyboard appears automatically when focus is set in the
                                                                                password box unless the phone has a hardware keyboard.                                           • Tap – for focus and selection

                                                                                                                                                                                 • Tap and hold – for precise
                                                                                                                                                                                 caret insertion




            Is explias ini dolo beatis incto cullis deles
            untus sam et duciis exceptam adissit, quam
            veliqui busdae venes sam harcite cernatum
            faceser ionseque dolupta vendam nam
            quatiberovit faceped maio volentium debis
            modissi tem nos rerum, et aborehenisci
            audionsed quam




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
174       Pivot                                                                                                                                                                                                               175




                                                                                A pivot control provides a quick way to manage views or pages within the                Microsoft will provide a control and
                                                                                application. This control can be used for filtering large datasets, view-               design template to support building
                                                                                ing multiple data sets, or switching application views. The control places              pivot experiences at a later date.
                                                                                                                                                                        Microsoft recommends that designers
                                                                                individual views horizontally next to each other, and manages the left and
                                                                                                                                                                        and developers wait to implement
                                                                                right navigation. Flicking or panning horizontally on the page cycles the               pivot experiences until final guidance
                                                                                pivot functionality.                                                                    is available and to use the following
                                                                                                                                                                        information for planning purposes only.
                                                                                The content of the page inside the pivot control is defined by the applica-
                                                                                tion.                                                                                   Never place a pivot control inside of
                                                                                                                                                                        another pivot control.

                                                                                                                                                                        Never place a pivot control inside of
                                                                                                                                                                        a panorama control.

                                                                                                                                                                        Applications should minimize the
                                                                                                                                                                        number of pivot pages. Users can
                                                                                                                                                                        become lost if they jump from pivot
                                                                                                                                                                        page to pivot page. Use pivot controls
                                                                                                                                                                        sparingly and limit the use of pivot
                                                                                                                                                                        pages to scenarios where it
                                                                                                                                                                        is appropriate for the experience.

                                                                                                                                                                        Pivot pages should not be used for
                                                                                                                                                                        task flow. Different pages should
                                                                                                                                                                        flow seamlessly in terms of look and
                                                                                                                                                                        feel and user activity should not be
                                                                                                                                                                        changed drastically.

                                                                                                                                                                        Pivot pages must not override the
                                                                                                                                                                        horizontal pan and flick functionality as
                                                                                                                                                                        it collides with the interaction design of
                                                                                                                                                                        the pivot control.

                                                                                                                                                                        There is no limit on the text length of
                                                                                                                                                                        the pivot header. The amount of text
                                                                                                                                                                        that is displayed is constrained by the
                                                                                                                                                                        width of the pivot control.

                                                                                                                                                                        The pivot header is a fixed height and
                                                                                                                                                                        cannot be changed.

                                                                                                                                                                        The pivot control should only be used
                                                                                                                                                                        to display items or data of similar type.

                                                                                                                                                                        An empty pivot page should only be
                                                                                                                                                                        removed when there is no chance that
                                                                                                                                                                        additional information can be added
                                                                                                                                                                        through user action.

      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
176       Progress bar                                                                                                                                                                                                     177




                                                                                The progress bar is a control that indicates the progress of an operation.           The use of a progress bar is optional,
                                                                                You can use the control to show generic progress, or progress that changes           but consider adding one if there are
                                                                                according to a value.                                                                wait states in your application that do
                                                                                                                                                                     not require user interaction.
                                                                                It supports a marquee (indeterminate) mode.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
178       Radio button                                                                                                                                                                                                         179




                                                                                A radio button is used to represent a set of related, but mutually exclusive             The tap gesture switches between
                                                                                choices. The user taps on the radio button description text or glyph to                  selected and un-selected settings.
                                                                                select the control. Only one option may be selected at a time.
                                                                                                                                                                         Radio button description text can wrap
                                                                                                                                                                         to a second line, but try to use either a
                                                                                The radio button control implements rest, press, and disabled states for
                                                                                                                                                                         single or double-line format for design
                                                                                both selected and un-selected settings.                                                  consistency.

                                                                                There is no visible focus state.                                                         Use a scroll panel instead if there are
                                                                                                                                                                         several choices for the user.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
180       Scroll viewer                                                                                                                                                                                                         181




                                                                                The scroll viewer allows users to navigate to content that is not directly                The Scroll Viewer supports pan and
                                                                                viewable within the frame of the application, such as a long section of text              flick gestures.
                                                                                or image.

                                                                                When scrolling, scroll indicators will fade in as the user pans or flicks and
                                                                                fade out after a second at the end of the gesture, but the scroll indicators
                                                                                are non-user actionable.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
182       Slider                                                                                                                                                                                                              183




                                                                                A slider control is used to set a value from a continuous range of data                 Applications can use either a horizontal
                                                                                such as volume or brightness levels. The slider has a minimum and                       or vertical slider, but a horizontal slider
                                                                                a maximum increment value.                                                              is recommended.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                             This is pre-release documentation and is subject to change in future releases.
184       Stack panel                                                                                                                                                                                                           185




                                                                                Provides a surface to display child elements in a line; either horizontally or            Padding may be required to prevent
                                                                                vertically.                                                                               crowding or overlapping when placing
                                                                                                                                                                          text that is not part of a control in a
                                                                                                                                                                          StackPanel.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
186       Text block                                                                                                                                                                                                            187




                                                                                The Text Block displays a fixed amount of text and is used to label con-                  Always use one of the Windows Phone
                                                                                trols or control groups. The text block stays the same for all states of the              OS 7.0 predefined text styles instead
                                                                                related control and supports word wrapping.                                               of hard coding font size, color, weight,
                                                                                                                                                                          or name to support future screen
                                                                                                                                                                          resolutions or sizes.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                               This is pre-release documentation and is subject to change in future releases.
188       Text box                                                                                                                                                                                                             189




                                                                                The Text Box control displays content and allows the user to type or edit                Text boxes may be set to read only, but
                                                                                the contents.                                                                            should generally be used for editable
                                                                                                                                                                         text.
                                                                                Text boxes may display a single or multiple lines. Multiple line text boxes
                                                                                                                                                                         The on-screen keyboard appears
                                                                                will wrap text to the size of the control.
                                                                                                                                                                         automatically when focus is set in
                                                                                                                                                                         the text box unless the phone has a
                                                                                                                                                                         hardware keyboard.

                                                                                                                                                                         Gestures supported:

                                                                                                                                                                                   • Tap – for focus and selection

                                                                                                                                                                                   • Tap and hold – for precise
                                                                                                                                                                                   caret insertion




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
190       User interface text guidelines                                                                                                                                                                                         191




          Lorum ipsum
                                                                                The Metro design elevates text to a primary UI element and having in-                      Review the Voice and Tone,
                                                                                formed, cleaner, and friendlier text for users will help applications parallel             Terminology, Capitalization, and
                                                                                the native Windows Phone 7 text format.                                                    Punctuation sections for specific
                                                                                                                                                                           guidance in those areas.
          Alit modit eat. Sa doloraes dolor anis maiosam                        Using the Metro style in voice and tone, terminology, capitalization, and

          inventorum et aut eium quistius explitiis dit                         punctuation will add an extra layer of fit and finish to any application and
                                                                                can significantly enhance usability of the application by the user.
          am harchici utent adite comnihilis eiusae ma
          pa dolorerfere, sitatem hil istione stisquae et
          illacepudis isto tet molupienet quis sit, tem ea
          volupta speleni stiusan dentus endae dem quia
          secessed ene etusa poria si offic tem fugit, nest,
          tem aut vollaut vendiat volut aute pos vollorest
          quo od que nam delibea tumquibus none
          vendestrum harum sit que doloreium quid et
          occum dolorectinis eniminu stinvende dolest,
          sere, aliquibus doluptatquia et lacia voluptat
          aut lamus dolore dolutatem sed et iligent es
          seditam sum erferit, tecabo.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                                This is pre-release documentation and is subject to change in future releases.
192       Text guidelines – voice and tone                                                                                                                                                                                     193




                                                                                Many users consider text displayed on computers to be another language                   Do not use computerese – jargon,
                                                                                called computerese, a jargon-filled, soulless, completely impenetrable for-              hexadecimal error codes, or text that
                                                                                eign language that torments them by hindering their ability to complete                  assumes computer knowledge.
                                                                                tasks and asks nonsensical questions in dialog boxes.                                    Use an authentic and clear voice, and
                                                                                                                                                                         reflect the language that is used by the
                                                                                Windows Phone 7 banishes computerese entirely and developers should                      audience.
                                                                                as well. The Windows Phone 7 voice and tone should be human, clear and
                                                                                consistent.                                                                              Use friendly, lighthearted, and
                                                                                                                                                                         empathic tones. Never use an angry or
                                                                                Voice refers to the personality within the text. For example, the voice of               mechanical tone in the application.
                                                                                the writer would be their overall personality expressed by what they write.
                                                                                                                                                                         If an application has many text strings,
                                                                                                                                                                         consider consulting with a technical
                                                                                Tone is the overall mood of the text such as happy or angry. The Windows
                                                                                                                                                                         writer or editor to review the text
                                                                                Phone 7 tone is friendly, lighthearted, and empathic.                                    strings.

                                                                                One method to check if text has the proper voice and tone would be to
                                                                                see if it sounds like a friend assisting another friend with something on the
                                                                                phone. An example would be helping them understand an error mes-
                                                                                sage that appears in the application. A developer shouldn’t offer a rigid,
                                                                                uninformative response when trying to explain an issue such as, “Error
                                                                                Code: 4B696C626F.” Many people could be confused or frustrated by that
                                                                                message, as it provides no context or potential solution. However, some-
                                                                                thing such as, “There is some info missing here. Please enter your name
                                                                                in the text box to move to the next page,” is clear, friendly and provides a
                                                                                helpful suggestion.

                                                                                It is imperative to give users a meaningful response in a casual, com-
                                                                                prehensible manner. Help them fix the problem in a way that they can
                                                                                understand.

                                                                                Consider the string, “Synchronize the phone device.” It sounds mechani-
                                                                                cal and stilted. Instead, “Sync your phone,” sounds much more like what
                                                                                someone would tell a friend to do.

                                                                                Another example is, “Schedule a calendar event for tomorrow through
                                                                                Outlook.” It is neither friendly nor representative of how a friend would
                                                                                speak. An alternative could be “Set up an appointment for tomorrow in
                                                                                Outlook.”




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                              This is pre-release documentation and is subject to change in future releases.
194       Text guidelines – capitalization                                                                                                                                                                                        195




          A
                                                                                Windows Phone 7 displays text in lowercase and all caps layouts in many                     Maintain consistent capitalization
                                                                                places, but also uses title caps, where the first and last words of the phrase              practices to prevent a disjointed or
                                                                                and all words in between are capitalized, and sentence caps, where only                     jagged reading experience.
                                                                                the first word of a sentence is capitalized.                                                Use lowercase for:
                    lit modit eat. Sa doloraes dolor anis                       Title caps exceptions are articles (a, an, the), coordinating conjunctions                  • Page titles
          maiosam inventorum et aut eium quistius                               (and, but, for, not, or, so, yet), and prepositions with four or fewer letters
                                                                                (at, for, in, into). An example would be “Neon Tetras in My Fish Tank.”                     • List titles
          explitiis dit am harchici utent adite comnihilis                      Sentence caps exceptions are words that would be normally capitalized in
                                                                                                                                                                            • List group titles

          eiusae ma pa dolorerfere, sitatem hil istione                         text such as proper nouns or feature names. An example would be “I want                     • Push button control text or words

          stisquae et illacepudis isto tet molupienet
                                                                                to visit Mt. Rainier in the springtime.”                                                      that function as commands

                                                                                                                                                                            • List items
          quis sit, tem ea volupta speleni stiusan dentus                                                                                                                   • Example text that appears in search
          endae dem quia secessed ene etusa poria si                                                                                                                          boxes

          offic tem fugit, nest, tem aut vollaut vendiat                                                                                                                    • Link controls in the middle of a
                                                                                                                                                                              sentence
          volut aute pos vollorest quo od que nam                                                                                                                           Use sentence caps for:
          delibea tumquibus none vendestrum harum                                                                                                                           • Check box and radio button labels

          sit que doloreium quid et occum dolorectinis                                                                                                                      • Progress indicators

          eniminu stinvende dolest, sere, aliquibus                                                                                                                         • Status, notification, and
                                                                                                                                                                              explanatory text
          doluptatquia et lacia voluptat aut lamus                                                                                                                          • Toggle switches
          dolore dolutatem doluptatur arcipidunt adictur                                                                                                                    Use all caps for:
          sincimos eati audignis nim dolorita coribus                                                                                                                       • Application titles

                                                                                                                                                                            • Dates and times

                                                                                                                                                                            • AM or PM




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                                 This is pre-release documentation and is subject to change in future releases.
196       Text guidelines – punctuation                                                                                                                                                                                      197




                                                                                Reading UI text that has no punctuation or poor punctuation can lead to                Maintain consistent punctuation
                                                                                severe user confusion and frustration. Punctuation helps to clarify ambig-             to prevent the user from becoming
                                                                                uous sentences, places emphasis where it needs it, and provide hints                   confused, clarify ambiguous text, and
                                                                                                                                                                       provide direct emphasis as needed.
                                                                                to the reader about the context of the words they read.
                                                                                                                                                                       The following table shows the standard
                                                                                Compare “Coconuts healthy organic and delicious” to “Coconuts: healthy,                rules of punctuation for UI elements.
                                                                                organic, and delicious.” and “Slowly quietly unbuckle it cables kick” to
                                                                                “Slowly & quietly unbuckle it – cables kick!” In these examples, punctua-
                                                                                tion reveals a tasty snack hidden in nonsense and emphasizes a potential




          ... & . ? ! ( )
                                                                                danger.



                                                                                 Punctuation Mark                       Usage Guidelines
                                                                                 Ampersand (&)                          Okay to use in settings or menu lists, for example: Date & Time; Clocks & Alarms.
                                                                                 Colon (:)                              • Do not use a colon at the end of labels for controls such as text boxes, drop-down
                                                                                                                        lists, and progress bars.
                                                                                                                        • Do not use a colon when the text box or drop-down list is embedded in a sentence or
                                                                                                                        when the drop-down list appears in a main window.
                                                                                                                        • Do not use a colon at the end of group headings or column headings.
                                                                                                                        • Use a colon to introduce numbers or other variables, for example: Percent Down-
                                                                                                                        loaded: XX%
                                                                                 Ellipsis (...)                         • Use an ellipsis in progress indicator labels to indicate a continuing action, for example,
                                                                                                                        when the user is downloading a file. Even if there is a visual of a progress indicator, you
                                                                                                                        will still want to use the ellipsis.
                                                                                                                        • Do not use an ellipsis in headings.
                                                                                                                        • Do not use an ellipsis in button labels.
                                                                                 End punctuation (. ? !)                • Use end punctuation only in instructional text in the UI. Do not use end punctuation if
                                                                                                                        instructional text appears in a title bar or button.
                                                                                                                        • Do not use a period at the end of option or check box text labels, even if the label is a
                                                                                                                        sentence.
                                                                                                                        • Separate sentences with one space after the ending punctuation, not with two spaces.
                                                                                                                        • End a question with a question mark. But in general, avoid phrasing labels as ques-
                                                                                                                        tions.
                                                                                                                        • It is okay to use a question mark at the end of a title for an error message or dialog
                                                                                                                        box.
                                                                                 Parenthesis ()                         Avoid using a parenthesis in the UI if possible, but use a parenthesis if you need to
                                                                                                                        include an acronym or other short piece of information.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                            This is pre-release documentation and is subject to change in future releases.
198       Miscellaneous                                                                                                                                                                                                    199




                                                                                Windows Phone 7 has other hardware features available not previously
                                                                                mentioned, including:

                                                                                        • Bluetooth

                                                                                        • Camera flash

                                                                                        • Camera LED

                                                                                        • Micro SD

                                                                                        • Micro USB

                                                                                        • Wi-fi

                                                                                All of these features have no direct UI components and developers will
                                                                                need to create custom UI elements if they need to represent them within
                                                                                their application.




      Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0
              ®
                                                                                                                                          This is pre-release documentation and is subject to change in future releases.
Ui design and interaction guide for windows phone 7 v2.0

More Related Content

PDF
Checkmate card printer
PPTX
Windows Phone 8 - 2 Designing WP8 Applications
PPTX
Wp7 metro style PPT
PDF
Weekly news from WCUMC 10-18-2015
PPTX
Windows phone UI Design Guidelines
PDF
PPTX
Windows phone 8 app using Kendo UI
PDF
Mobile App Design course (iOS & Android)
Checkmate card printer
Windows Phone 8 - 2 Designing WP8 Applications
Wp7 metro style PPT
Weekly news from WCUMC 10-18-2015
Windows phone UI Design Guidelines
Windows phone 8 app using Kendo UI
Mobile App Design course (iOS & Android)

Similar to Ui design and interaction guide for windows phone 7 v2.0 (20)

PDF
Porting Android apps to the Series 40 platform
PDF
Seamless Integration Case Study Launch Activation Windows &amp; &amp; Mobile
PDF
Nokia x5 01-ug_en
DOCX
Basic power point presentation on the following info., for Whole F.docx
PDF
iOS humaninterfaceguidelines
PDF
Mobile hig
PDF
uNite 2017 - Magic mirror - Tom Vandevoorde and Michiel Wouters
PDF
Application Design, Development and User Experience Methodologies for the 2 i...
PDF
InFocus Solutions Displays
PPTX
Digital Marketing Credentials
PDF
Ideum hardware
PDF
Gt i8190 um-dtm_jellybean_eng_rev.1.0_121204
PDF
Game design & development
PDF
Worktoolstudy
PDF
Dukane Imagepro 8107 User Guide
PDF
Palm Pre User Guide
PPTX
Mixed Reality Interfaces and Product Management
PPTX
Presentation2
PDF
Welcome to ICC/HP Digital Print Day
PPSX
Genee technologies ppt presentation
Porting Android apps to the Series 40 platform
Seamless Integration Case Study Launch Activation Windows &amp; &amp; Mobile
Nokia x5 01-ug_en
Basic power point presentation on the following info., for Whole F.docx
iOS humaninterfaceguidelines
Mobile hig
uNite 2017 - Magic mirror - Tom Vandevoorde and Michiel Wouters
Application Design, Development and User Experience Methodologies for the 2 i...
InFocus Solutions Displays
Digital Marketing Credentials
Ideum hardware
Gt i8190 um-dtm_jellybean_eng_rev.1.0_121204
Game design & development
Worktoolstudy
Dukane Imagepro 8107 User Guide
Palm Pre User Guide
Mixed Reality Interfaces and Product Management
Presentation2
Welcome to ICC/HP Digital Print Day
Genee technologies ppt presentation
Ad

Recently uploaded (20)

PPTX
Orthtotics presentation regarding physcial therapy
PDF
Quality Control Management for RMG, Level- 4, Certificate
PDF
intro_to_rust.pptx_123456789012446789.pdf
PPTX
rapid fire quiz in your house is your india.pptx
PPTX
LITERATURE CASE STUDY DESIGN SEMESTER 5.pptx
PDF
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
PPT
Machine printing techniques and plangi dyeing
PDF
Interior Structure and Construction A1 NGYANQI
PPTX
DOC-20250430-WA0014._20250714_235747_0000.pptx
PPTX
Entrepreneur intro, origin, process, method
PPTX
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
PPT
robotS AND ROBOTICSOF HUMANS AND MACHINES
PPT
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
PDF
SEVA- Fashion designing-Presentation.pdf
PDF
Test slideshare presentation for blog post
PPTX
HPE Aruba-master-icon-library_052722.pptx
PDF
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
PPTX
YV PROFILE PROJECTS PROFILE PRES. DESIGN
DOCX
A Contemporary Luxury Villa in Dubai Jumeirah-2.docx
PPTX
Acoustics new for. Sound insulation and absorber
Orthtotics presentation regarding physcial therapy
Quality Control Management for RMG, Level- 4, Certificate
intro_to_rust.pptx_123456789012446789.pdf
rapid fire quiz in your house is your india.pptx
LITERATURE CASE STUDY DESIGN SEMESTER 5.pptx
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
Machine printing techniques and plangi dyeing
Interior Structure and Construction A1 NGYANQI
DOC-20250430-WA0014._20250714_235747_0000.pptx
Entrepreneur intro, origin, process, method
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
robotS AND ROBOTICSOF HUMANS AND MACHINES
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
SEVA- Fashion designing-Presentation.pdf
Test slideshare presentation for blog post
HPE Aruba-master-icon-library_052722.pptx
UNIT 1 Introduction fnfbbfhfhfbdhdbdto Java.pptx.pdf
YV PROFILE PROJECTS PROFILE PRES. DESIGN
A Contemporary Luxury Villa in Dubai Jumeirah-2.docx
Acoustics new for. Sound insulation and absorber
Ad

Ui design and interaction guide for windows phone 7 v2.0

  • 1. UI Design and Interaction Guide for Windows Phone 7 7 July 2010 Version 2.0
  • 2. UI Design and Interaction Guide for Windows Phone 7 July 2010 Version 2.0 This is pre-release documentation and is subject to change in future releases.
  • 3. This document supports a preliminary release of a software product that may be changed substantially prior to final commercial release. This docu- ment is provided for informational purposes only and Microsoft makes no warranties, either express or implied, in this document. Information in this document, including URL and other Internet Web site references, is subject to change without notice. The entire risk of the use or the results from the use of this document remains with the user. Unless otherwise noted, the companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted in examples herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this docu- ment. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property. © 2010 Microsoft Corporation. All rights reserved. Microsoft Bing, Expression, Expression Blend, Internet Explorer, MSDN, MSN, Outlook, PlayReady, Silverlight, Visual Basic, Visual C#, Visual Studio, Windows, Windows Azure, Windows Live, Windows Vista, Xbox, Xbox 360, Xbox LIVE, XNA, and Zune are trademarks of the Microsoft group of companies. All other trademarks are property of their respective owners.
  • 4. The Windows Phone 7 design philosophy 8 Application settings 68 Light sensor 130 Text box 188 The Windows Phone 7 human/computer Input methods 70 Output methods 132 User interface text guidelines 190 interface 14 Touch input 72 FM radio 134 Text guidelines – voice and tone 192 A note on units: pixels vs millimeters 16 Supported touch gestures 78 Windows phone application interface Text guidelines – capitalization 194 A note on game UI design 18 Tap 80 controls 136 Text guidelines – punctuation 196 Visual design resources and feedback 20 Double tap 82 Border 138 Miscellaneous 198 Globalization and localization Pan 84 Push button 140 considerations 22 Flick 86 Canvas 142 User interface framework 24 Pinch and stretch 88 Check box 144 Start 26 Touch and hold 90 Content control 146 Application bar 30 Four touch points 92 Content presenter 148 Application bar icons 32 On-screen keyboard 94 Grid 150 Application bar menu 36 Hardware keyboard 98 Hyperlink 152 Screen orientations 38 Microphone 102 Image 154 Fonts 40 Phone hardware buttons 104 InkPresenter 156 Incoming phone calls 42 Start button 106 ListBox 158 Push notifications 44 Search button 108 MediaElement 160 Tiles and tile notification 46 Back button 110 Multi scale image 162 Toast notifications 48 Power button 112 Panorama 164 Raw notifications 50 Volume buttons 114 Password box 172 Navigation, frames and pages 52 Camera button 116 Pivot 174 Page title 56 Sensors 118 Progress bar 176 Progress indicator 58 Accelerometer 120 Radio button 178 Scroller 60 A-GPS 122 Scroll viewer 180 Themes 62 Proximity sensor 124 Slider 182 Screen transitions and animations 64 Camera 126 Stack panel 184 System and system application settings 66 Compass 128 Text block 186
  • 5. 8 The Windows Phone 7 design philosophy 9 Windows® Phone 7 is for Life Maximizers, people who are busy personally and professionally, constantly juggling priorities, and who value technol- ogy as a means to an end, a way to get things done. They do not want to feel overwhelmed because they have priorities to balance as they grow personally and professionally, all the while living life to its fullest. Applications should embody the three Red Threads of Windows Phone 7: • Personal – your day, your way • Relevant – your people, your location • Connected – your stuff, your peace of mind Every application should connect to at least one of these threads. Cre- ate applications that can be personalized by humanizing them to display people whom the users know or places that users want to go to, and make it easy to share information across the web and beyond. Build authentic experiences. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 6. 10 The Windows Phone 7 design philosophy 11 The Windows Phone OS 7 User Interface (UI) is based on a design that is internally named Metro, and echoes the visual language of airport and metro system signage in its design and typeface. The goal is to create contextual relevance through content – the user’s own content – so that using the phone is a personal experience. Metro design interfaces embody harmonious, functional, and attractive visual elements that encourage play- ful exploration so that the user feels a sense of wonder and excitement. A clear, straightforward design not only makes an application legible, it also encourages usage and can lead to delight. The Metro design was developed using the five following principles: 1) Clean, light, open, and fast: It is visually distinctive, contains ample white space, reduces clutter and elevates typography as a key design element. 2) Content, not chrome: It accentuates focus on the content that the user cares most about, making the product simple and ap proachable for everyone. 3) Integrated hardware and software: Hardware and software blend into each other and creates a seamless user experience from single-button access to Search, Start, Back and the camera to on-board sensor integration.. 4) World-class motion: The Windows Phone 7 touch and gesture experiences on capacitive screens are consistent with Windows 7 on the desktop and include hardware-accelerated animations and transitions to enhance the user’s experience at every turn. 5) Soulful and alive: A personalized, automatically updated view into the information that matters most to the user is enabled and brings to life a cinematic photo and video experience by having a fully integrated Zune media player experience. These design principles are based around the concept that UI elements should be authentically digital and embody harmonious, functional, and attractive visual elements. Applications should engage users by promoting navigation, exploration, and exciting visuals in their design. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 7. 12 The Windows Phone 7 design philosophy 13 Developers should use digital metaphors where natural and appropriate and should not necessarily try to mimic real world interaction if it is not appropriate. If it is, the UI should look and feel great even though the UI objects only visually imitate and mimic analog manipulation behaviors. The Windows Phone Developer Tools provides a collection of Metro-inspired Silver- light controls for use in applications. Microsoft highly recommends that Windows Phone 7 develop- ers adopt the Metro design style for their applications. This guide provides the design knowledge, fundamentals, and guidance to do so. Although requirements and implementa- tions will vary from application to application, utilizing Metro styled elements will create a more consistent and fluid overall UI experience for users. This guide also details the methods of user interaction that can be used by a Windows Phone 7 application, including standard input, functionality within the UI framework, and the Metro- inspired Silverlight® and system-based controls. Diverging from the Windows Phone 7 interaction model is generally not allowed, but developers can gain a deeper understanding of the hardware and software interaction elements that are avail- able as a part of the development platform, and those that are customizable. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 8. 14 The Windows Phone 7 human/computer interface 15 The first computing devices were manual objects that required touch to Usability and the UI should be operate them. The interfaces were the stones of an abacus or the dials a primary design goal in every on a difference engine. The information was simply seen as the state of application for Windows Phone 7, not an afterthought. the device. As electronic computers were birthed, input methods rapidly evolved from switches to keyboard and mouse, and output methods from As developers create applications, silent, blinking lights to high-definition displays with stereo sound. This they should place special emphasis transition exponentially increased what could be done with computers, throughout to ensure that layouts, but ironically made them much harder to use because the only way to pictures, visual elements and touch- based controls fit this UI paradigm. manipulate them or their data was through an interface that was only a proxy to the computing event hidden away inside a case. Celebrate and elevate the content to be the experience by using the UI to While a child can play with an abacus and intuitively learn how to operate create awesome, unique applications it through exploration and play, the same cannot be said for computing that draw people in and encourage devices that do not have a touch component. touch. The Windows Phone 7 UI is designed around touch interaction, offer- ing full navigation using a combination of finger gesture movements. Knowledge about interacting with layouts should be inherently obvious. There are no complex key chords or arcane commands to memorize, and the keyboard’s role is to input text. People intuitively tap, flick, pan, and otherwise touch and manipulate content directly since the content is the interface. With A-GPS functionality, sensors such as an accelerometer, and a vibration unit, the UI can be extended beyond the surface of the phone to include where it is in the world, what orientation it is at, and how it feels – the phone itself is the UI. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 9. 16 A note on units: pixels vs millimeters 17 All Windows Phone 7 phones will have WVGA screens at 800 x 480 pixel If developers or designers require resolution, no matter the screen size. Most of the measurement units precise millimeter sizing for UI in this guide are expressed in pixels but in certain cases, usually around elements, consult original equipment manufacturers display specifications touch target size, measurements may be expressed in millimeters. for the proper conversion factor to go from pixels to millimeters. Since these units are not directly convertible without knowing the pixels per millimeter of a given screen, designers and developers who require fine-grained millimeter positioning or sizing of elements for a given screen size will need to refer to original equipment manufacturers display specifi- cations as there is no method to determine this programmatically. All of the controls and UI elements within the Windows Phone Developer Tools are sized to support all possible screen sizes for Windows Phone and adhere to minimum millimeter touch targets regardless of the screen size. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 10. 18 A note on game UI design 19 Games are naturally immersive environments and their UIs should flex to For full-screen games, developers are accommodate the needs of the game. free to implement whatever in-game UI elements they see fit. For games By creating games that are designed from the beginning to use a multitouch that appear within the Windows Phone screen, games will make the most of the primary input device of the phone, page frame, developers should follow the relevant UI guidance in the rest of and control systems will feel natural to Windows Phone users. Though there this document. are hardware buttons on the device, only the Back button is available to the game, and Back should only be used for the specific purpose of pausing and exiting the game. Think about what types of control schemes fit well with a multitouch device, and break away from simulating traditional controls, such as thumbsticks as they take away useful space from the gameplay area. Instead, use gestures, such as point, stretch, shrink, flick, and turn as user input instead. Allow play- ers to draw paths on the screen to direct units and issue commands; allow them to select groups of units by stretching an on-screen rectangle around them. Allow players to navigate by dragging the landscape with a swipe gesture, or to rotate the view by turning it with two fingers. There are many possibilities for game control using touch, and by choosing a scheme that seems natural and intuitive to gamers, you’ll provide the best experience on Windows Phone. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 11. 20 Visual design resources and feedback 21 To help designers and developers create high-fidelity visual mockups of applications that are true to the Metro design, Microsoft has created two visual design resources for inspiration and project work. The first is the Windows Phone Design System – Codename Metro, a PDF book that visually explains the inspiration behind the Metro design and puts a face to the life maximizers the phone was designed for. The second is the Windows Phone Design Templates, layered Photo- shop template files for controls that ship as a part of the Windows Phone Developer Tools and can be used to create pixel-perfect application layouts to guide development or pitch an idea. The design templates also include examples of controls that are a part of Windows Phone OS 7.0, but are not available as a part of the Windows Phone Developer Tools. These additional templates are included to help designers and developers maintain a consistent look and feel across applications for system controls that developers wish to mimic. The above resources and links to programming topics related to the UI elements discussed in this guide can be accessed at http://go.microsoft. com/fwlink/?LinkID=190696. Microsoft values feedback on this guide and the Visual Design Resources we have made available to help developers and designers create beautiful Windows Phone 7 applications. If you have suggestions or feedback about these resources, please email us at wp7des@microsoft.com. We may not be able to respond to every email, but we will consider incorporating your feedback into the next versions of the resources. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 12. 22 Globalization and localization considerations 23 Windows Phone 7 will be available in a number of languages and regions Provide at least 40% buffer space for around the world. Developers who are interested in selling their applica- localized strings. tions to a global market should pay particular attention to making sure that their applications are world-ready by following best practices around designing the application UI to support varying text string lengths, date formats, and be aware of cultural sensitivities around use of color and images, and geopolitical issues. MSDN online, http://msdn.microsoft.com, has a variety of topics that detail these best practices. Image Source: NASA’s Earth Observatory Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 13. 24 User interface framework 25 The Windows Phone 7 user interface framework provides consistent system objects, events, and interactions for developers and designers to create beautiful, predictable application experiences for the end user. This section examines each piece of the framework and discusses how they can be used or accommodated within application user interfaces. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 14. 26 Start 27 Start is the beginning of the Windows Phone 7 experience for users after Start is a reserved space and only they power on their phone. Start displays application Tiles that users users can place tiles in this area. have pinned and placed in a position of their choosing for quick launch. Windows Phones come with pre-placed tiles installed by Microsoft, phone Pressing the Start Button on the phone always returns a user to Start, no manufacturers, and phone service matter what application is running. providers. Tiles that use the Tile Notification feature can update the Tile graphic or Start is the likely to be the most title text, or increment a counter, enabling users to create a personalized viewed phone interface by users; Start experience. Examples include displaying if it is their turn in a game, therefore, developers and designers the weather, or how many email messages they have received. should carefully consider the potential that users may pin and display the Start is always presented in portrait view. Application Tile for their application in Start. For more information, see the Application Tiles and Tile Notifications and Start Button sections. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 15. 28 Status bar 29 The Status Bar is one of the two primary components of Windows Phone The Status Bar is system-reserved and OS 7.0 chrome. The Application Bar is the other. cannot be modified. It is an indicator bar that displays system-level status information in a It can be hidden, but many users view the system clock as an essential feature simple and clean presentation in a reserved space in the application work- so think carefully before hiding it. space. It automatically updates to provide different notifications and keeps users aware of system-level status by displaying the following information (in order from left to right): 1) Signal strength 2) Data connection 3) Call forwarding 4) Roaming 5) Wireless network signal strength 6) Bluetooth status 7) Ringer mode 8) Input status 9) Battery power level 10) System clock By default, only the system clock is always visible. If a user double taps in the Status Bar area, all other relevant indicators slide into view for approxi- mately eight seconds before sliding out of view. The system clock is 32 pixels high in portrait mode and 72 pixels wide in landscape mode. It always extends to the edge of the screen and is opaque in appearance. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 16. 30 Application bar 31 The Application Bar provides a place for developers to display up to four Use icon buttons for the primary, most- of the most common application tasks and views as icon buttons. used actions in the application. Do not use four icons just to use them. Less is The Application Bar provides a view that displays icon buttons with text more in this space. hints and an optional context menu when a user taps the visual indica- Some actions are difficult to clearly tor of sequential dots or flicks up the Application Bar. This view can be convey with an icon. Place it in the dismissed by tapping outside of the menu area or on the dots, using the Application Bar Menu instead. back button, or selecting a menu item or Application Bar Icon. For guidelines about icon button sizing, The Application Bar always stays on the same edge of the display as the color, formatting, and text hints, see Steering Buttons (Back, Start, and Search) and extends the full width of the the Application Bar Icons topic. For guidelines about the Application Bar screen in portrait or landscape mode. Icon buttons will rotate to align with Menu, see the Application Bar Menu the three phone orientations. topic. Application Bar buttons can be displayed in an enabled or disabled state. No text-only buttons are permitted. An example of a disabled button would be a delete button in read-only scenarios. Place tasks that are not frequently accessed in the Application Bar Menu. The application bar height in portrait mode and width in landscape mode Application Bar Menu item text will is fixed at 72 pixels and cannot be modified. It can be set to be displayed run off the screen if it is too long. The or hidden. recommended maximum length for the text of a menu item is between 14 to 20 characters. Again, less is more in this space. Use the user-defined system theme color unless there is a compelling reason to override it. Using a custom color can affect the display quality of the button icons, create unusual visual effects in menu animations, and negatively influence power consumption on some display types. The opacity of the Application Bar can be adjusted finely, but it is recommended that you use only opacity values of 0, .5, and 1. If the opacity is set to less than 1, the Application Bar will overlay the UI. If the opacity is set to 1, the displayed page size will change. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 17. 32 Application bar icons 33 Window Mobile 7 Series Basic Core Icons Vectors Application Bar Icons should be clear, understandable, and leverage real- Use icon buttons for the primary, most- world metaphors that are familiar to users. used actions in an application. Do not use four icons just to use them. Less is NEW ADD MINUS CHECK The best icons have simple geometry and limit the amount of fine detail. more in this space. Icon text hints are displayed when users display the Application Bar Menu. Some actions are difficult to clearly convey with an icon. Present those actions in the Application Bar Menu instead. For more information about CLOSE CANCEL SYNC REFRESH the Application Bar Menu, see the Application Bar topic. Application Bar Icon images should be 48 pixels by 48 pixels and have a white foreground on a transparent QUESTION MARK EXCLAMATION BACK NEXT background using an alpha channel. The Application Bar will colorize the icon according to the current style settings and colored icons can cause this effect to display unpredictably. SEARCH DELETE SAVE FOLDER Images that are sized at sizes other than the recommended size will be scaled to fit and can potentially lower the overall image quality of the Application Bar Icon. The circle that is displayed on each icon VIDEO CAMERA E-MAIL SETTINGS button is drawn by the Application Bar and should not be included in the source image. FAVORITES ADD TO FAVORITES DOWNLOAD UPLOAD SHARE EDIT OVERFLOW DOTS PLAY PAUSE PREVIOUS/REWIND NEXT/FASTFORWARD Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 18. 34 Application bar icons QUESTION MARK EXCLAMATION BACK NEXT 35 SEARCH DELETE SAVE FOLDER Use the user-defined system theme color unless there is a compelling reason to override it. Using a custom VIDEO CAMERA E-MAIL SETTINGS color can affect the display quality of the button icons, create unusual visual effects in menu animations, and negatively influence power consumption on some display types. FAVORITES ADD TO FAVORITES DOWNLOAD UPLOAD Buttons must have an icon and must have a text hint. Text hints should be short and provide context for what the button does and do not need to be fully descriptive. An example would be a button that flips an SHARE EDIT OVERFLOW DOTS image horizontally. Instead of “flip horizontally”, “flip” would be sufficient. For more information, see the Application Bar and Application Bar Menu topic. PLAY PAUSE PREVIOUS/REWIND NEXT/FASTFORWARD A set of 64 Application Bar Icons, 32 dark and 32 light in PNG format, are installed as a part of the Windows Phone Developer Tools Beta at C: Program FilesMicrosoft SDKs Windows Phonev7.0Icons. Only the white icons should be used in the Application Bar. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 19. 36 Application bar menu 37 The Application Bar Menu is an optional way for users to access specific A maximum of five menu items can be tasks from the Application Bar. The Application Bar Menu can be accessed displayed. by tapping the visual indicator of sequential dots in the Application Bar or If no menu items are displayed, only by flicking the Application Bar up. This view can be dismissed by tapping the icon text hints are displayed. outside of the menu area or on the dots, using the back button, or select- ing a menu item or Application Bar Icon. The Application Bar Menu will remain on the screen until the user performs To prevent the menu from scrolling, the number of items displayed in the an action. menu is limited to five. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 20. 38 Screen orientations 39 Windows Phone supports three views of screen orientation: portrait, Developers must add code to support landscape left, and landscape right. landscape views. In portrait view, the page is vertically oriented with the steering buttons Applications cannot specify only left or only right landscape views if they appearing at the bottom of the phone and the height of the page is support orientation changes – both greater than the width. views must be supported. In either of the two landscape views, the Status Bar and Application Bar Applications can define a static remain on the side of the screen that has the Power and Start Button, orientation view using the Supported respectively. Landscape left has the Status Bar on the left and landscape Orientations property. right has the Status Bar on the right. Applications that support text input should assume a horizontal hardware The Status Bar grows from 32 pixel in portrait view to 72 pixel in both keyboard is present and support landscape views, as measured from the side of the phone that has the landscape views. power button toward the center of the screen. Custom screen transition animation Portrait view is the default view for applications. effects are prohibited. Start is always presented in portrait view. The screen orientation will change based on the following actions: Beginning Screen Orientation Rotating Ending Screen Orientation Portrait 60 degrees left Landscape Left Portrait 60 degrees right Landscape Right Landscape Left 60 degrees right Portrait Landscape Right 60 degrees left Portrait Landscape Left or Right, flat on a table 30 degrees up Portrait If in portrait view, the screen orientation will change to either of the land- scape views when a user slides out a horizontal hardware keyboard. There is no programmatic way to switch orientations as the orientation property is set to read-only but it is possible to set a fixed orientation. Screen transition animation effects are played when screen rotation occurs. In-application landscape view-aware system components are the Status Bar, Application Bar, Application Bar Menu, Volume/Ring/Vibrate Display, Push Notifications, and Dialogs. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 21. 40 Fonts 41 Segoe WP Regular The Metro design principles center on a look that uses type prominently throughout Windows Phone 7. Segoe WP is the system font and it is Do not post Segoe WP fonts for redistribution or package with an a Unicode font. It has kern pairing, but does not have font hinting. It application – this would violate the abcdefghijklmnopqrstuvwxyz1234567890 is available in five styles: license terms of the font. ABCDEFGHIJKLMNOPQRSTUVWXYZ 1) Regular Since Segoe is such an integral part of the UI experience, use alternative fonts 2) Bold sparingly in applications. 3) Semi-bold Avoid using font sizes that are smaller Segoe WP Bold 4) Semi-light than 15 points in size. Text that is 5) Black smaller than 15 points in size can be abcdefghijklmnopqrstuvwxyz1234567890 A standard set of East Asian reading fonts that support Chinese standard, hard to read and are likely too small in size as touch targets without touch ABCDEFGHIJKLMNOPQRSTUVWXYZ Japanese, and Korean is also included. target padding. Developers can embed their own fonts for use within their application, If using colorized fonts, use high- but they will only be available for use within that application. contrast colors at smaller point sizes to enhance readability and test against Segoe WP Semi-bold both themes and all accent colors. abcdefghijklmnopqrstuvwxyz1234567890 ABCDEFGHIJKLMNOPQRSTUVWXYZ Segoe WP Semi-light abcdefghijklmnopqrstuvwxyz1234567890 ABCDEFGHIJKLMNOPQRSTUVWXYZ Segoe WP Black abcdefghijklmnopqrstuvwxyz1234567890 ABCDEFGHIJKLMNOPQRSTUVWXYZ Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 22. 42 Incoming phone calls 43 When a user receives or places a phone call, the UI of the application Applications that expect user currently in view is completely obscured to display the dial pad or infor- interaction during a phone call should mation about the incoming call. have a minimum 75 pixel margin on the edge of the device that has Once the call is connected or accepted, the call information flips to the the power button. No touchable UI elements should be placed within that top of the screen and the application appears beneath it in a dimmed- margin. out view. Tapping in the dimmed-out area or pushing a hardware button minimizes the call progress information into a 64 pixel bar in the portrait mode and 75 pixels in the landscape mode. Tapping in the dimmed area brings the obscured application to the foreground for user interaction. If the keypad or additional call features are selected during a call, the application currently in view is completely obscured. Call progress information stays pinned to the same side of the phone as the power button and the text does not rotate from the portrait orienta- tion. If the proximity sensor senses an object near it, it will power off the screen to conserve battery. This happens when the phone is held to the ear or may also happen if the phone is being held horizontally and a finger obscures the sensor. The position of the proximity sensor will vary by phone manufacturer. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 23. 44 Push notifications 45 For application development, the Push Notification Service is designed to Use tile notifications for awareness- provide a cloud service with a dedicated, resilient, and persistent channel only notifications. for pushing a notification to a mobile device. When a cloud service needs Use toast notifications for action- to send a push notification to a device, it sends a notification request to requested notifications, but use them the Push Notification Service, which in turn routes the notification to the sparingly, as all applications have application, or to the device as a tile, toast or raw notification. access to toast notifications. Too many toast notifications could annoy or There are three methods to display push notifications: frustrate the user. 1. Tile notifications – Awareness notifications inform users of Use raw notifications for in-application changes or events that may have occurred and are non-disruptive to the action-required notifications. user workflow. They appear in Start tiles. See Application Tiles and Tile Notifications for more information. 2. Toast notifications – Action-requested notifications are system-wide notifications that do not disrupt the user workflow or require intervention to resolve. An example of these notifications is when the user receives a text message or instant message. These notifications appear at the top of the screen and are displayed for 10 seconds before disappear- ing. See Toast Notifications for more information. 3. Raw notifications – Action-required in-application notifications are fully controlled by an application and affect only that application. These appear within an application. See Raw Notifications for more infor- mation. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 24. 46 Tiles and tile notification 47 A tile is an easily recognizable visual shortcut for an application or its Applications that do not incorporate a content that users can set in an arbitrary location on the phone Start tile image or title will display a generic, experience. Other than pre-installed application tiles, only the user can system-defined icon and the name of your project. pin tiles to Start. There is no method for an application to determine if its tile has been pinned to Start, so developers should not assume that it is. Tile images should be 173 pixels by 173 pixels at 256 dpi and in JPEG or PNG Tiles can communicate information to the user by displaying an optional formats. Images larger or smaller than counter that uses the system font, updating developer-provided tile this in size will be cropped or scaled up background images, or displaying an optional title that uses the system using the top left corner as the origin. font that is of a fixed size and color. Counter, background image and The default tile image will be scaled down for display in the application list title updates are controlled using the Tile Notification service. The accent unless a separate 63 pixels by 63 pixels color for the counter is always the accent color that the user has selected. application image is included. Counter display is optional. The tile title can be displayed without Double-width tiles are only available to Microsoft, phone manufacturers, using Tile Notifications. and mobile operators. If you use multiple tile images, they should be visually consistent with each other and have a recognizable theme or style. Developers cannot change the color, font, font color, or size of the counter display. Be conservative in the use of Tile Notifications – excessive use can negatively impact battery life. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 25. 48 Toast notifications 49 A web service can generate a special kind of push notification known Applications must default to turn toast as a toast notification, which displays as an opaque bar in the Accent notifications off. Color on the top of the screen for 10 seconds to be tapped on before Toast notifications should be personally disappearing. If the notification is tapped, the application that sent the relevant and time critical to the user. notification will launch. The toast notification displays a scaled-down version of the application icon in the left corner and two fields of text are Toast notifications should primarily available, one bolded title and one normal sub-title. Text that is longer be focused on peer-to-peer communication. than the display area will be truncated. Use the XNA Framework GamerServices Examples would be notifications produced via an instant messaging client for turn-based or in-game or a peer-to-peer oriented application. Turn-based games should use the notifications. XNA Framework GamerServices for notifications. Be very conservative in the frequency and number of toast notifications an application generates. As all applications can access this notification channel, imagine every application on a user’s phone sending a toast notification every time an event happened in the application – many people might find this behavior to be very annoying and visually distract- ing. Follow the guidance closely to prevent user notification overload. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 26. 50 Raw notifications 51 Raw notifications are in-application, action-requested notifications. They can be generated by the application itself or sent from a web service. Web service raw notifications only appear within the specified application; there is no system-wide way to display a raw notification. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 27. 52 Navigation, frames and pages 53 frame control Windows Phone 7 applications are based on a Silverlight page model Finding the right number of pages where users can navigate forward through different pages (screens) of for an application and defining the content via links and backward using the Back Button. A goal of this navigational map may take some trial page control and error. Mockup the pages and model is to ease the creation of view-based applications that fit naturally navigational map of an application into the Windows Phone 7 page navigation model. and walk through them several times before coding to minimize or eliminate The core elements of an application include a top-level container control the need to add pages or change the called a frame that displays pages. Only one frame is allowed per ap- map later, when it will be much harder. plication, but there is no limit to the number of pages. Windows Phone 7 provides frame and page classes to facilitate navigation to separate sec- Review the Windows Phone Application Interface Controls section to consider tions of content. how your application content will fit or be displayed before creating your own Pages hold discrete sections of content in applications and appear as custom control for a page. content separate screens to the user. Developers can create as many different pages and construct their UIs as needed to present content within an Do not display the Status Bar or application and then provide navigation to those pages from the frame Application Bar when in full-screen or page if desired. Simple applications may only require one page while mode. more complex ones may require many. Developers can also implement a full-screen view where the Status Bar or Application Bar can optionally be displayed, but this must be explicitly de- fined using the visibility property, as the default is to not display them. The best practice for a full-screen view is to not display either so that users can focus on the content experience. Notifications and incoming calls are still displayed in full-screen mode, even if the Status Bar and/or the Applica- tion bar is hidden. Examples of full-screen UI implementations are a screen animation that is embedded within an application. The page navigation model is a spoke and hub system. This means that unless developers explicitly add links to other pages within their applica- tion, users must use the Back Button to navigate to a page that they wish to view and that users always move forward through the pages. This is similar to how a web browser displays and navigates web page history. The system tracks each page a user has visited and places it in what is called the back stack so that when a user pushes the Back Button, they are served the last saved page in the back stack. There is no limit to the number of pages that can be placed in the back stack. The back stack, combined with the hub and spoke model of page Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 28. 54 Navigation, frames and pages 55 navigation, means that a user navigating from page 1 (p1) to page 2 (p2) to p1 to p2 to page 3 (p3) to p1 creates a back stack of p1, p2, p1, p2, p3, p1. If the user modified content in the second instance of p2 in the back stack, but navigates back using the Back Button to the first instance of p2 in the back stack, unless the page refreshes the data, previous changes will not appear on that page, as it is a snapshot of how the user saw that page at that point in navigation. For this reason, think carefully about implementing page-to-page links or buttons that could impact application navigation for the user and con- sider if a page should be refreshed upon entry. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 29. 56 Page title 57 Although not an interactive control, the Page Title is used to clearly display Page Titles are optional. When information for page contents. It appears in default Windows Phone displayed, they do not scroll. Developer Tools templates and is optional. Page titles are not actionable. If Page Titles are displayed, reserve the Page Title space in all pages of the application for consistency so the user does not experience differing window sizes across the application. If Page Titles are displayed, the title should be the name of the application or a specific descriptive line of text relevant to the displayed data. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 30. 58 Progress indicator 59 The Progress Indicator shows in-application activity related to an activity Developers who wish to mimic this or a series of events. This is a system-reserved control that is integrated control should use the determinate into the Status Bar and that can be displayed across multiple application indicator for tasks such as downloading content and the indeterminate for pages. tasks such as remote connections. The progress indicator can be either determinate or indeterminate. Determinate progress indicators have a beginning and ending point. Indeterminate progress indicators continue until a task is finished. See also the Progress Bar topic in the Windows Phone Application Interface Controls section. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 31. 60 Scroller 61 Page scrolling occurs when content on the screen exceeds the bounds of the visible page and a user pans or flicks. When scrolling, visible scroll indicators appear on the right side for vertical scrolling and along the bottom for horizontal scrolling to indicate whether the content is longer or wider than the page, and to represent the current position on the page. After page scrolling ends, the scroll indicators fade from view after one second has elapsed. scroll indicator The scroll indicators are not user actionable and are an overlay to the Appears when you interact with the page content beneath. Their primary function is to provide a hint to the user about the page size. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 32. 62 Themes 63 METRO COLORS A Theme is a user-selected combination of background and accent colors Since users can choose between 20 that personalizes the visual elements on a Windows Phone for that user. Themes (22 if the mobile operator or Only colors are part of a theme. Other elements such as fonts or control phone manufacturer adds an accent color,) developers should consider sizing do not change. the possible color combinations if they add colored elements to their There are two background colors, dark or light, and 10 accent colors, UI. Developers may wish to consult magenta (FF0097), purple (A200FF), teal (00ABA9), lime (8CBF26), brown with graphic designers for color (996600), pink (FF0097), orange (F09609), blue (1BA1E2), red (E51400) combination assistance. and green (339933). Mobile operators or phone manufacturers may add one additional system color. The default Theme is a dark background with Avoid using too much white in applications, such as white the blue accent color, but mobile operators or phone manufactures can METRO BLUE: 1ba1e2 METRO GREEN: 339933 NEW PURPLE: a200ff NEW VERIDIAN: 00aba9 NEW LIME: 8cbf26 backgrounds, as this may have an override this setting. impact on battery life for devices that have organic LED displays. As a part of the Windows Phone Application Platform, applications auto- matically take on the selected theme and ensure that system controls and User-selected, system-wide Theming UI elements appear consistently across the platform to prevent a jarring, cannot be modified; only Themes unsettled user experience. within applications can be modified. If the foreground or background color Developers do not have to adjust application controls to match the user of a control is explicitly set, verify Theme, as these styles will be modified at runtime, but developers can that the content is visible in both override the Theme within an application. For example, developers may dark and light themes. If the set color METRO ORANGE: f09609 METRO RED: e51400 NEW BROWN: 996600 NEW PINK: e671b8 NEW MAGENTA: ff0097 want to override the Theme of an application if they want to build an is not visible, also explicitly set the application that matches a brand color or content consumed from a web background or foreground color to service. Developers can provide their own resources and override any maintain contrast or choose a more appropriate color. themed properties, but cannot turn off theming. Developers should be cautious about using too much white in their applications, as this may have an impact on battery life for devices that have organic LED displays. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 33. 64 Screen transitions and animations 65 Windows Phone OS 7.0 has many built-in screen transitions and anima- Built-in screen transitions and tions that create a sense of a “fluid” user interface. One example is the animations are system-reserved and application entry transition, where unrelated application tiles “flip” out of developers cannot access them but may mimic them. the way, leaving the selected application tile alone for a moment before it too “flips” to reveal the application user interface. If developers want to implement transitions or animations within their application, they must use Silverlight or XNA Framework to create them. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 34. 66 System and system application settings 67 System and System Application Settings are accessed via the App List and Developers should become familiar tapping on the Settings icon. Users are presented with a Pivot to view set- with the system settings options and tings choices for the system and for applications that ship with the system. consider how various user settings could impact UI or application From here, users can personalize the appearance and behavior of their behavior. For example, developers of phone by performing activities such as setting the system Theme, joining web service-connected applications Wi-Fi networks, or changing the region and language used by the phone. should consider application behavior when the user puts the phone in Changes to System and System Application Settings are immediately airplane mode. implemented. In some cases, even though the change has happened immediately, the user may not have feedback that the change has Application settings must be implemented within the application occurred until an ongoing event is completed or when a future event itself. occurs. Examples would be joining a secure Wi-Fi network or changing the frequency of alarms. Developers do not have access to place application settings within the System and System Application Settings and must implement application settings pages within the application itself. See the Application Settings topic for more information. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 35. 68 Application settings 69 For applications that have several user-selectable settings, developers Immediately implement user-selected should create a settings page within the application and model it after Application Settings without a the layout and behaviors in System and System Application Settings. confirming dialog box and provide a feedback method to indicate that the Changes to Application Settings should be immediately implemented. This change has occurred. means that a “Done”, “OK”, or other confirming dialog is not needed. In Avoid creating Application Settings some cases, even though the change has happened immediately, the user that have more than 2 pages (screens). may not have feedback that the change has occurred until an ongoing event is completed or a future event occurs. Examples would be joining Settings that require more than a single screen should use overlying half a secure Wi-Fi network or changing the frequency of alarms. screens to avoid losing context when the SIP Keyboard is displayed. Keeping Application Settings brief and clear should be a design goal. Complex, multi-page, multi-level Application Settings can frustrate or If a task cannot be undone, always confuse users into thinking that they have entered another application provide the user with an option to entirely. cancel. Text entry is an example. Actions that overwrite or delete data, or are irreversable must have a “Cancel” button. When using additional screens with commit and cancel buttons, clicking those buttons should perform the associated action and return the user to the main settings screen. To keep the heading of settings control panels consistent, the heading for the settings page should look as follows: SETTINGS <CPL Name/ Application Name> Applications that fetch data over the network must have an option to disable data usage. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 36. 70 Input methods 71 Windows Phone 7 applications can support multiple methods of input: • Touch • On-screen keyboard • Hardware keyboard • Microphone • Phone hardware buttons • Sensors While not every feature of every input method is available to developers since some are system-reserved, developers should consider each area for applicability to the UI for their applications. Additional topics in this guide provide greater detail for each input method. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 37. 72 Touch input 73 Touch input is a core experience of Windows Phone 7 and has inherent Do not use gestures as a shortcut to differences from traditional keyboard and mouse input systems. Designed a task, and only use a gesture in a for natural and intuitive user interaction, touch input in Windows Phone manner as it was intended. See the Supported Touch Gestures topic for 7 enables users to interact with application content such as a photo or a gesture definitions. web page. Touch input enables simple and consistent user touch gestures that imitate real life behavior, such as panning on a photo to move it. All basic or common tasks should be Single-touch gestures make interaction easier with one hand, but multi- completed using a single finger. touch gestures are also available to provide more advanced gesture Touch controls should respond to touch functionality. immediately. A touch control that lags or that seems slow when transitioning Application developers should strive to create unique and exciting experi- will have a negative impact on the user ences that encourage the discovery of content through the use of touch experience. gestures. Users should enjoy the experience of navigating through the steps of a task as well as the completion of the task itself. Touch gestures Provide immediate visual or auditory feedback to indicate interaction should provide a delightful, more colorful, intuitive experience within ap- with the touch control. All actions plications should have immediate and obvious consequence by responding while the Touch delights the senses as the user gets to see the interaction match gesture happens, not afterwards. A the performance. The touch UI should always have aware and responsive bad example would be a user flicking a performance, just like how real world objects respond to touch immedi- photo and the movement occurs after ately, and applications on Windows Phone 7 should as well, by performing the gesture is completed. the action in real time and by providing immediate feedback that an event For time consuming processes, or process is occurring. Users should not have to wait as it breaks their developers should elegantly provide immersion, flow, and concentration, especially as their gestures transition feedback to indicate that something is from one to the other. For example, a pan may turn into a flick or a tap happening by using content to indicate can become a double tap, and the user should not be aware that the UI is progress, or consider using a progress switching gesture support. bar or raw notification as a last resort. For example, show more and more of While this topic provides general touch guidance for customizing UI visual the content as it is being downloaded. elements, Microsoft recommends that developers use standard Metro-in- Response to gestures should be spired touch controls that are available in the Windows Phone Developer consistent across the phone and Tools and always follow the guidance when creating custom controls. Win- within an application. Using the dows Phone Developer Tool controls have been properly sized for touch touch controls in the Windows interaction based on the guidelines presented in this section. There are Phone Developer Tools will help with maintaining consistency as they have cases where touch UI control sizing will or should vary from the guidance, built-in support for the touch gestures such as with games, depending on the needs of the application. discussed in this topic. If developers create custom touch controls, they should respond to gestures in a similar manner. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 38. 74 Touch input 75 There are three components to the touch UI: Windows Phone 7 gestures align with Windows desktop gestures. There 1) Touch target – the area that is defined to accept touch input is some intentional variability due and is not visible to the user to the differences in screen size and the Windows desktop support of the 2) Touch element – the visual indicator of the touch target that is mouse. These differences are mostly visible to the user around editing shortcuts, which can be potentially addressed by using 3) Touch control – a touch target that is combined with a touch the on-screen keyboard. Applications for Windows Phone 7 should try to element that the user touches align with the gesture experience of the corresponding Windows desktop Touch targets should not be smaller than 9 mm or 34 pixels square and application. provide at least 2 mm or 8 pixels between touchable controls. In excep- tional cases, controls can be smaller but never more than 7 mm or 26 Gesture extensibility is not supported. pixels square. The on-screen keyboard and hyperlinks in Windows Phone® Developers can only use the supported Internet Explorer® are an exception because they have differently sized hit gestures and replicate movement as specified. targets. Every touch control should be able Touch targets should be larger than 9 mm when: to be comfortably touched with a finger. This involves manipulating size, • It is a frequently touched control spacing, location, and visuals to reduce the difficulty in acquiring a target • Touching it could create a severe error or have a destructive through finger touch. consequence Touch targets should not be smaller • The user could become frustrated if they cannot touch it than 9 mm or 34 pixels square and provide at least 2 mm or 8 pixels • It is close to the edge of the screen between touchable controls. In exceptional cases, controls can be • It requires sequential or multiple inputs between adjacent touch smaller but never more than 7 mm or controls. 26 pixels square. For touch and non-touch UI elements that have special sizing or position- Touch targets should be larger than 9mm when touch controls are ing constraints, layouts may need to be adjusted or additional application frequently touched, create a severe pages may need to be created to accommodate the minimum touch target error such as sending an incomplete sizes. message, have a destructive consequence such as deleting data, frustrate the user such as navigating to another screen accidentally, are within 3.5 mm of the edge of the screen, or require sequential or multiple inputs between adjacent touch controls. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 39. 76 Touch input 77 The touch target can be larger than the touch element, but never be smaller than it, and the touch element must never be smaller than 60% of the touch target. Use oblong controls in vertically constrained UIs, as these shapes are easier to hit. The touch target height can be as small as 7 mm as long as the width is at least 20 mm. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 40. 78 Supported touch gestures 79 A touch gesture involves performing a movement with single or multiple fingers on a touch screen. The tapping of a UI element such as a push button is an example of a touch gesture. Touch gestures are the primary method for a user to interact with the Windows Phone UI. The controls provided in the Windows Phone Developer tools are used as touch interaction elements and are properly sized for touch interaction. The following single and multi-touch gestures are supported in Windows Phone 7: Single-touch: • Tap • Double Tap • Pan • Flick • Touch and Hold Multi-touch: • Pinch and Stretch Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 41. 80 Tap 81 A tap is a single, brief touch on the screen within a bounded area and back up again. There are two behaviors associated with a tap gesture: 1. Finger down provides touch indication 2. Finger up executes the action A tap also stops any type of content from moving on the screen. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 42. 82 Double tap 83 A double tap is two quick taps within a bounded area. A double tap toggles between in and out zoom states of a control or an application. The application determines its current zoomed state and will zoom in or zoom out accordingly. The zoomed-in and zoomed-out states are defined by the application. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 43. 84 Pan 85 A pan is a single finger placed down and moved across the screen in any direction. The pan gesture ends when the finger is lifted from the screen. There are two behaviors associated with a pan gesture: 1. Content can be moved through direct manipulation. It will stick to and follow the movement of the finger. Controls or the application can decide what panning direction to support. This movement can be horizontal, vertical, or any other direction specified. If content is moved to an in-between state, the content should snap back to the closest state. 2. A pan can move or reorder a specific item. An item follows the finger and drops in the new location when the finger is lifted. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 44. 86 Flick 87 A flick is a single finger down moved rapidly in any direction and ends with the finger up. A flick can follow a pan gesture. A flick gesture moves content from one area to another area. The controls or the application can be configured to support specific flicking directional behavior. This can be horizontal, vertical, or another specified direction. If horizontal or vertical paths are specified, movements in other directions will be converted into vertical or horizontal movement. Flick moves the whole canvas, but developers can specify individual objects to be moved instead. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 45. 88 Pinch and stretch 89 A pinch and stretch is two fingers down within separate bounded areas followed by the fingers moving closer together (pinch) or further apart (stretch). Pinch and stretch provides continuous zoom on content with the center of the zoom located at the center of the two fingers. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 46. 90 Touch and hold 91 Touch and hold is a single finger down within a bounded area for The touch and hold gesture should a defined period of time. generally be used to display a context menu or options page for an item. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 47. 92 Four touch points 93 Windows Phone supports four simultaneous user touch input points to Performance tune applications that enable unique application interactions. Simple examples would be game support more than two simultaneous or musical instrument applications. touch input points to ensure application performance does not Screen touches 7 mm or larger in diameter are treated as unique touches suffer. when the edges of the touch are separated by 3.5mm or more, and all gestures are supported. Every touch point also adds additional processor load, so developers implementing more than two simultaneous touch input points should be aware of potential performance impacts. While Windows Phone supports up to ten touch points, not all hardware screens will support more than four touch points. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 48. 94 On-screen keyboard 95 The On-Screen Keyboard is for text input and opens by sliding up When the On-Screen Keyboard is automatically from the bottom of the screen when an editable control deployed in an application, it obscures becomes active. When a user taps outside of the edit control, scrolls a list, content behind it. or presses the Back Button, it closes by sliding down off the bottom of the If text suggestions are enabled, they screen. If a phone has a Hardware Keyboard, (which is a phone manufac- are docked above the On-Screen turer option,) and is deployed, the On-Screen Keyboard will automatically Keyboard and obscure content behind close. it. Windows Phone 7 supports only full alphabet layouts such as QWERTY, If a developer is using a multi-line edit control, part of it may be hidden AZERTY, and QWERTZ. 12/-20 key layouts are not supported. behind the keyboard. A developer must ensure that the line containing the The phone features several typing aids such as text suggestions that ap- caret is always in view and above the pear above the keyboard, auto-correction, and context-specific keyboard keyboard. layouts. Developers should set an input scope The On-Screen Keyboard is 336 pixels tall in portrait view and 256 pixels in edit fields to define the keyboard tall in either landscape view. The text suggestion window is 65 pixels tall in type and enable the appropriate both screen orientations. typing aides. For example, if a developer chooses the URL input The developer can define if an edit control is active, and whether or not scope, a keyboard layout will be shown featuring a .com key. To accomplish to deploy the On-Screen Keyboard when a page is navigated to. this, you must set the input scope property in your project for the text When an edit control is active, the system will automatically scroll the box or edit control. editable control above the On-Screen Keyboard if it is a control from the Windows Phone Developer Tools. Only deploy the keyboard automatically if the application page If the keyboard has an enter key and the current edit control is a single has no more than two edit controls line, pressing the enter key can either submit the data and close the key- and the first edit control is a single-line board or change focus to next edit control. If the edit control is multi-line, edit box. Do not automatically deploy the keyboard if the page has content pressing the enter key will add a new line. or controls that would be obscured behind the keyboard. Do not change the padding inside edit controls or override automatically placed margins of controls places near the edge of the screen. Changing these values can lead to a non-uniform method to select edit controls by touch. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 49. 96 On-screen keyboard 97 There are 8 different, context-specific, On-Screen Keyboard types that can be used, depending upon the input scope desired: Keyboard Type Layout Default Standard QWERTY layout Text Standard layout with ASCII based emoticons Email Address Standard layout with .com and @ keys Phone Number Typical 12-key layout Web Address Standard layout with .com key and customized Enter key Maps Standard layout with a customized Enter key Search Semi-transparent layout with a Search and .com key SMS Address Standard layout with easy access to phone number layout Developers cannot define their own keyboard types or modify existing ones. The Default, Text, and Maps keyboard types all automatically deploy with the text suggestion window. If an application takes up all or most of the screen area or has crowded edit controls, it might be difficult for the user to tap outside of the control to close the On-Screen Keyboard and view more content. The applica- tion can automatically close the keyboard when the user tries to view the content rather than type, such as when the user scrolls, when the active edit control moves outside of the viewable area, or when the user presses the Back Button. Another solution is to implement an edit view and a read view and open or close the keyboard depending upon the view state. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 50. 98 Hardware keyboard 99 ^ [ ] { } < > € £ ¥ 1 2 3 4 5 6 7 8 9 0 A Hardware Keyboard is an optional component that phone manufactur- Hardware keys may not be used to q w e r t y u i o p 1 2 3 4 5 6 7 8 ers may 0 9 * - add. They may come available in + = ~ designs such - a pull out bar, as © ®move focus, scroll lists, or navigate ™ q w e r t y u i o p q w e r t y u i o maps p web pages. or a vertical slide configuration, or even a flip or swivel orientation. @ # $ % & ( ) / @ # $ % & ( ) Windows Phone 7 supports only full alphabet layouts such as QWERTY, / a s d f g h j k l a s d f g h j k l a s d f g h j k l AZERTY, and QWERTZ. 12/-20 key layouts are not supported. ! ; : ‘ “ ? - ! ; : ‘ “ ? `m caps caps caps z x c v b n m enter The Hardware Keyboard is only used for typing letters, accented letters, enter enter z x c v b n m z x c v b n numbers and symbols, and cannot be used to control the UI. The hard- ware keyboard can include arrow keys that can move the caret within an sym , space .  fn äé , space . edit control. However, thesefn  sym , arrow äé must not be used to move focus, keys space .  sym scroll lists, or navigate maps or web pages. The following keys will always be available on the Hardware Keyboard: • Letters (A-Z), Enter, Space, Backspace, Shift, emoticon, SYM, ^ [ ] { } < > € £ ¥ period, and comma. 1 2 3 4 5 6 7 8 9 0 • Numbers (0-9) as either a primary or secondary character. * - + = - ~ © ® ™ p q w e r t y u i o p • Accent key for German, French, Italian, and Spanish keyboards. @ # $ % & ( ) / The following keys are not supported or allowed on the Hardware Key- a s d f g h j k l board: ; : • A directional pad or any other navigation specific hardware. r caps ! ‘ “ ? `m enter z x c v b n • The “OK & Home” and the “Send & End” hardware soft keys. ym fn äé , space .  sym • The keys Delete, Insert, Control (CTRL), Alt, Caps Lock, Tab, page up and down, and escape (ESC). • The Start, Search, and Back Buttons as part of the keyboard. The shift key allows for typing capital letters. There are 3 shift modes: On, Off, and Lock (Caps Lock). The emoticon key brings up the emoticons picker. The accent key is used to type accented letters. When the accent key is pressed, it adds an accent letter left of the caret. Multiple presses cycle Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 51. 100 Hardware keyboard 101 ^ [ ] { } < > € £ ¥ 1 2 3 4 5 6 7 8 9 0 through the available accents. The function key (FN) plus the accent key p 1 2 3 4 5 6 7 8 9 0 * - + = - ~ © ® ™ cycles back to the previous accent. Pressing and holding the accent key q w e r t y u i o p q w e r t y u i o p displays an accent picker. @ # $ % & ( ) / @ # $ % & ( ) / Characters that are not available on the keyboard are accessible via a a s d f g h j k l a s d f g h j k l symbol picker that is launched by pressing the symbol key (SYM). Press- ; : - ; : ing and holding the SYM key displays the language picker. FN and SYM caps ! ‘ “ ? enter caps ! ‘ “ ? `m enter z x c v b n m z x c v b n switches to the next language. A Status Bar input indicator displays shift mode, FN mode, and active fn äé , space .  sym fn äé , space .  sym language. Keyboard keys can be overloaded. Pressing and holding a key or using the FN key allows the user to access secondary functionality. When the symbol picker, accent picker, or language picker is launched, they are displayed at the bottom part of the screen. They disappear after a selection is made or after one second has elapsed. Applications can use an API to query if the Hardware Keyboard is available or deployed and act accordingly. When the Hardware Keyboard is deployed, the On-Screen Keyboard will close. If the device has a fixed hardware keyboard, the On-Screen Key- board will not be displayed. Text suggestions are also available for the Hardware Keyboard. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 52. 102 Microphone 103 The Windows Phone 7 microphone has a frequency range from 150 Hz to 7 kHz. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 53. 104 Phone hardware buttons 105 1 A Windows Phone has several hardware buttons positioned around the See specific Phone Hardware Button device. Each button provides a unique function that may adjust or impact topics for guidance on how each a running application. button can affect the UI. 2 1) Power/sleep 2) Volume up and volume down 3) Camera 4) Back 5) Start 6) Search The Back, Start, and Search buttons can optionally be implemented as capacitive touch buttons by phone manufacturers. 3 4 5 6 Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 54. 106 Start button 107 When a user presses the Start button, it will take them to Start in the Developers do not have access to phone user interface. Applications will receive an obscured event to pause. modify the Start button behavior and their applications should always be prepared to receive an obscured event to pause after the Start button is pushed. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 55. 108 Search button 109 The hardware Search Button will launch the Bing search experience for the Use the SearchTask Class to launch Bing user to find content from anywhere on the device. The search experience search from within an application. will vary depending on the context of the user. The Bing search experi- ence can be launched from Start, the App List, system applications, and third-party applications. From select system applications such as Outlook, an in-application search can be launched. Developers cannot replicate in-application search, but can mimic a Search Button push to launch the Bing search using the SearchTask Class. Developers cannot modify or change the behavior of the Search Button. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 56. 110 Back button 111 The hardware Back Button is used to navigate back on pages (screens) See the Navigation, Frames and Pages within an application or between applications. The application allows the topic for additional guidance. framework to perform the operation when the button is pressed. Also, the Developers should only implement Back Button can be used to close menus, dialogs, navigate to a previous Back Button behaviors that navigate page, exit a search operation, or even switch applications. However, the back or dismiss context menus principal usage is to navigate from the current page to the previous page. or modal dialog boxes. All other implementations are prohibited. See the Navigation, Frames, and Pages topic for more information about the page navigation model in Windows Phone 7. When a user navigates back out of the root page of an application, the application will terminate. The Back Button will not work as a backspace key to delete text input. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 57. 112 Power button 113 The power button has several different behaviors depending on the state Developers do not have access to of the phone: modify the Power button behavior and their applications should always be prepared to receive an obscured event to pause or terminate after the Power button is pushed. Phone State Power Button Push Duration Behavior Powered off Any Boots the phone Powered on, screen unlocked, screen on < 3 seconds Locks and turns off screen Powered on, screen locked, screen on < 3 seconds Turns screen off Powered on, screen locked, screen off < 3 seconds Turns screen on Any powered on state > 3 seconds and < 8 seconds Turns phone off via software shutdown Any powered on state > 8 seconds Turns phone off via hardware shutdown Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 58. 114 Volume buttons 115 The hardware Volume Buttons are used to adjust the volume of either the in-call conversation volume (if a phone call is active), or else the overall device volume (if there is no active phone call), which includes music, radio, video, application, ringtone, and system sound volume. Pressing either Volume Button will expose the volume control, a 93 pixel tall overlay at the top of the screen and may contain audio transport controls such as previous and next if there is a media player active. It will always contain a control to toggle the ringer setting on and off. This con- trol affects the playback of the system sounds that the user can control in the Ringtone and Sound settings screen. If the phone is locked, the Volume Buttons are still active when media is playing or there is a phone call in progress. The buttons operate system-wide and volume settings carry through into the application. This means that developers cannot have volumes set higher than the user settings or override mute. Pressing and holding a Volume Button will do a key press repeat and incrementally increase or decrease the volume depending on the button pushed. When a user receives a phone call, touching either Volume Button will silence the ringtone. Developers cannot edit the audio transport controls overlay or override the Volume Buttons behaviors. Developers can control the volume of the audio stream they provide to the system, including muting it. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 59. 116 Camera button 117 The Camera Button is a dual action button supporting full and half button press modes. When a user does a full button press, the phone will launch the camera application. If the user does a half button press after the cam- era application has launched, the auto-focus feature is enabled. Within the Camera application, pushing the Camera Button will take a photo when in camera mode or start or stop video capture when in video mode. If the user presses and holds the camera button for more than one second when the device is in stand-by (screen off) or locked, the camera application will launch. Applications can programmatically launch the camera application by calling the CameraCaptureTask Class. Developers cannot modify or change the behavior of the Camera Button. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 60. 118 Sensors 119 Every Windows Phone 7 phone contains the following sensors: • Accelerometer • A-GPS • Proximity Sensor • Camera • Compass • Light Sensor While not every sensor is available to developers since some are system- reserved, developers should consider each area for applicability to the UI for their applications. Additional topics in this guide provide greater detail for each sensor. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 61. 120 Accelerometer 121 The Windows Phone 7 accelerometer is an electromechanical device Developers creating applications or that measures acceleration caused by gravity or external sources to an games that require a higher level accuracy of +/- 5 degrees. This 3D motion sensor provides continuous of precision and sensitivity from the accelerometer should calibrate information about the forces being applied to the device in the X, Y, and accelerometer data. Z planes. A Windows Phone can leverage this feature to create sophisticated experi- ences for the end user by calling managed APIs that are easy and flexible to use. Developers can offer scenarios such as automatic screen rotation, tilt-to-scroll, and gaming control within their applications. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 62. 122 A-GPS 123 A-GPS (assisted global positioning system) is used to determine the location of the phone and provides information to Location Services on the phone. There are no direct UI elements associated with A-GPS, but develop- ers have access to Location Services in the System.Device.Location namespace. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 63. 124 Proximity sensor 125 The Proximity Sensor is used to power off the screen to conserve battery when an object is detected within 15 mm of the sensor during a phone call. Phone manufacturers have discretion as to where to place the sensor, so its location may vary from phone to phone. The sensor remains active when the phone is being used in speakerphone mode, so it is possible to accidentally power off the screen if a finger or object covers the sensor. Developers do not have access to the Proximity Sensor or its behaviors. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 64. 126 Camera 127 All Windows Phone 7 phones have a five megapixel or larger camera with auto-focus and flash, and a 4:3 aspect ratio image sensor. There are no direct UI elements associated with the Camera, but develop- ers have access to the Camera in the Microsoft.Phone.Tasks namespace. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 65. 128 Compass 129 The Compass is used to determine navigation direction relative to the Earth’s magnetic field. Developers do not have access to the Compass or its behaviors. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 66. 130 Light sensor 131 The Light Sensor is used to determine the intensity of light up to 4,000 lux and helps in automatically adjusting screen brightness. Developers do not have access to the Light Sensor or its behaviors and there are no UI ele- ments associated with it. Image Source: NASA Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 67. 132 Output methods 133 1 Windows Phone 7 applications have multiple methods of output: If developers or designers require precise millimeter sizing for UI 1) Audio output jack elements, consult the display specifications provided by original 2) On-device speaker equipment manufacturers for the proper pixels to millimeters conversion 3) On-device screen factor. See the topic, A Note on Units – Pixels vs. Millimeters for more 4) Vibration information. Developers should consider each area for applicability to the UI for their Consult the display specifications applications. provided by original equipment manufacturers for screen bit depth. 3 All Windows Phone 7 phones will have at least 16-bit (5 red, 6 green, 5 blue) WVGA screens at 800 x 480 pixel resolution, no matter the screen size. Phone manufacturers have the option to use higher bit depth screens, but there is no programmatic way to query for bit depth. The vibration unit can be turned on or off by the user in the Ringtones and Sounds preferences and this setting cannot be overridden. 4 2 Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 68. 134 FM radio 135 All Windows Phone 7 phones have a built-in FM radio tuner. Develop- Use the base Silverlight controls in the ers will need to create the UI for the service, as there are no built-in UI Windows Phone Developer Tools to components. build application UIs. Applications cannot lock the frequency or region of the FM radio tuner; therefore, developers should poll the API prior to displaying the UI to refresh the frequency or region values of the tuner in case another application has changed the values. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 69. 136 Windows phone application interface controls 137 The Silverlight® UI framework delivered on Windows Phone 7 is the next If you need to create your own user step in the evolution of Silverlight and enables a new class of mobile actionable control, please adhere to design experiences. Silverlight harnesses the power of .NET and includes the general Metro styling guidance as discussed in the first section of this numerous controls, rich layout, and styling. It also supports vector-based guide, Philosophy of the UI and Design. graphics and animation APIs. Select Silverlight controls have been themed with a new exciting look explicitly for the Windows Phone 7 platform. De- Use the Windows Phone Design velopers can use their previous Silverlight and .NET development experi- Templates as visual guides for creating ence to facilitate working with this mobile control set and apply it to their custom controls that mimic system controls. Windows Phone 7 applications. The following topics list the Silverlight controls in the Windows Phone De- veloper Tools, including controls that do not have UI components but can affect other parts of the UI. Refer to specific control topics for a detailed overview and guidance for each. This guide only focuses on controls that impact the phone UI and does not exhaustively cover every Silverlight control available in the Windows Phone Developer Tools, as UI guidance exists elsewhere for those controls. User set system theming flows down automatically into all controls avail- able in the Windows Phone Developer Tools. Developers may also create their own controls as needed and these con- trols may replicate system controls that are not available as a part of the Windows Phone Developer Tools. See the Visual Design Resources topic for graphic design templates for system controls that developers may wish to mimic. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 70. 138 Border 139 Provides a border, background, or both to another control. A border can Do not hard-code the border width. button contain only one child element. Use the phone border width to support screen scaling. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 71. 140 Push button 141 A button initiates an action when a user taps on it. The shape is usually Buttons support the tap gesture. rectangular and the standard layout allows for either text or an image If using text, buttons should never to be displayed. include more than two words. Buttons support rest, press, and disabled states. Text should be concise and typically a verb. There is no visible focus state. When used in dialog boxes, “OK” or positive actions should be on the left, and “Cancel” or negative actions on the right. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 72. 142 Canvas 143 Provides a surface to display child elements at specific coordinates in the Canvas uses a pixel-based layout canvas. and can provide better performance than using the grid control for deeply embedded or nested controls in layout passes for applications that do not change orientations. Use the grid control if the application frame needs to grow, shrink, or rotate. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 73. 144 Check box 145 Check boxes are used to define a binary state and can be used in groups Even though the control can support to display multiple choices from which the user can select one or more multiple lines, limit text to either a choices. A user can either tap a check box or the accompanying text to one or two line format for design consistency. select an option. If there are several choices to present The control supports an indeterminate state that can be used to com- to a user, consider using a scroll viewer municate checked and unchecked status simultaneously for a number of and adding a stack panel. underlying items. Microsoft does not recommend the Check boxes support rest, press, and disabled states for both selected use of the indeterminate state because and un-selected settings. the user could be confused about which of the underlying property items There is no visible focus state. is actually checked or unchecked. A more appropriate alternative is to map the data sources for that checkbox to separate checkboxes or use a multi- selection list, particularly if a dynamic data set is used. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 74. 146 Content control 147 Represents a control with a single piece of content of any type. Many controls derive from Content Control and can contain objects, such as a Button. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 75. 148 Content presenter 149 Displays the content of a Content Presenter. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 76. 150 Grid 151 Provides a surface that is composed of rows and columns to display child Using the grid control for deeply elements. You define the rows and columns for a grid, then, assign objects embedded or nested controls in layout to a specific row or column in the grid. You can optionally display gridlines. passes for applications that do not change orientations or grow or shrink the viewable area can lead to degraded performance. Use the canvas control if the application frame does not need to grow, shrink, or rotate. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 77. 152 Hyperlink 153 The hyperlink control allows you to embed hypertext links in a page and Only use the Hyperlink control for specify a navigation target. navigation, not to trigger events, or hide or show additional text. To trigger The control supports rest, press, and disabled states. events, use a button control instead. There is no visible focus state. Avoid placing hyperlinks close to each other. Doing so may make it difficult for the user to select an individual link without zooming. Hyperlink controls should only use a disabled state if the state is temporary, such as other system processes are occurring, or if the state can be changed to enabled by a user action. A link that is disabled and cannot be enabled by user action should not be displayed. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 78. 154 Image 155 The image control displays an image in PNG or JPEG format and displays indexed images with 1, 4, or 8 bit color-depth or true color images with 24 or 32 bit color-depth. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 79. 156 InkPresenter 157 InkPresenter provides a primitive drawing surface to collect strokes or InkPresenter does not support Bézier curves within a canvas control. handwriting recognition. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 80. 158 ListBox 159 A ListBox control contains a collection of items. You can populate the control by binding it to a data source or displaying unbound items. The ListBox is an items control, which means that you can populate it with items that contain text or other controls. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 81. 160 MediaElement 161 A MediaElement control provides a rectangular region that can display Do not use this control for sound video on its surface, or plays audio if no video is present. effects in your application; use the XNA Framework SoundEffect API instead or your application will fail certification. This is because the MediaElement will interrupt and halt any audio that is playing in the background. Do use this control for full-screen video playback, or in other situations where background audio would be halted. Only one MediaElement can be active at a time. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 82. 162 Multi scale image 163 Multi Scale Image enables users to open a multi-resolution image that can Developers must implement gestures be scaled and repositioned for detailed viewing. By default, an image that when using this control because it does is loaded by Multi Scale Image zooms (expands) when first loaded. This not have any gesture support built-in. behavior can be disabled by setting the UseSprings property to false. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 83. 164 Panorama 165 Panorama applications are a part of the core Windows Phone OS 7.0 Microsoft will provide a control visual experience. Unlike standard applications that are designed to fit and design template to support within the confines of the phone screen, these applications offer a unique building Panoramas at a later date. Microsoft recommends that designers way to view controls, data, and services by using a long horizontal canvas and developers wait to implement that extends beyond the confines of the screen. These inherently dynamic Panoramas until final guidance is applications use layered animations and content so that layers smoothly available and to use the following pan at different speeds, similar to parallax effects. information for planning purposes only. Thumbnails are a main element of the panoramic view. They link to con- tent or media that is consumed outside of the panoramic experience. For Panoramas: Use either a single color background Elements of a panoramic application serve as the starting point for more or an image that spans the entire detailed experiences. The element flow example is not indicative of plat- panorama. If you decide to use an form functionality, but rather the end-user experience. As an example, image, any UI image type that is while an application that is launched from a panorama application might supported by Silverlight is acceptable, be what the end-user sees; the launched application is actually just a dif- but JPEGs are recommended, as they ferent view of the same panorama application. generally have smaller file sizes than other formats. The user interface consists of layer types that operate with their own inde- You can use multiple images as a pendent motion logic: a background image, a panorama title, panorama background, but you should note that section titles, and panorama sections. Thumbnails complete the experi- only one image should be displayed at ence and are a main element of the panoramic view. They link to content any given time. or media that is consumed outside of the panoramic experience. Background images should be between The background image is the lowest layer and is meant to give the 480 x 800 pixels and 1024 x 800 pixels (width x height) to ensure good panorama its rich magazine-like feel. Usually a full-bleed image, the performance, minimal load time, and background is potentially the most visual part of the application. no scaling. The panorama title is the title of the overall panorama application. It is Use a 16 x 9 aspect ratio for a meant to let the user identify the application and should be visible no panorama application that has four matter how they enter the application. sections. Panorama sections are the component of the panoramic application that Use a transparent black or white filter to aid text legibility. encapsulates other controls and content. Panorama sections move at the same rate as the finger pan or flick. Use a rate of motion that is relative to the panning gesture, which is A panorama section title is optional for any given panorama section. determined by the total width of the top content layer relative to the width of the background image. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 84. 166 Panorama 167 Wrap off and then back onto the visible area when the user pans beyond the width of the image. For Panorama Titles: Use either plain text or images, such as a logo, for the panorama title. You can also use multiple elements, such as a logo and text (or other UI elements). Ensure that the font or image color for the title works across the entire background and that it is not dependent on the background image for visibility. Use the system fonts and styles unless there is a need for a specific branded experience that uses a different font, size or color. Use the same panorama title for the launch tile in Start for consistency. Avoid animating the panorama title or dynamically changing its size. Use a rate of motion for the panorama title that is slow relative to the topmost content layer, and slower than the background art. For Panorama Section Titles: Use plain text for panorama section titles. Alternatively, you can use images. You can use multiple elements, such as an image and text (or other UIElements). Ensure that the panorama section title is not dependent on the background art. Avoid animated panorama section titles because the title will be moving. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 85. 168 Panorama 169 Span the entire panorama section with panorama section titles, even if multiple controls are present. Animate panorama section titles off the screen when a user navigates to a new section. A panorama section’s title should act differently depending on whether the section’s width is greater than or less than the width of the screen. If the section’s width is greater, there should be a horizontal animation. That is, the title should not stay in the top left of the section, but rather it should move at a different speed along the top while the panorama is moving. Under these circumstances, there should not be vertical scrolling. Alternatively, if the section’s width is less than the screen width, the title should always be set to the top left of the section. Under these circumstances, there should not be any horizontal animation and, the title should move along with the content. For Panorama Sections: Vertical scrolling through a list or grid in panorama sections is acceptable as long as it is within the confines of the section and is not in parallel with a horizontal scroll. Animate panorama sections off the screen when a user navigates to a new section. Consider hiding panorama sections until they have content to display. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 86. 170 Panorama 171 For thumbnails, use cropped images that highlight an identifiable subject rather than an entire image. If the image is not identifiable without text, up to two lines of text can be used to identify the content. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 87. 172 Password box 173 The Password Box control displays content and allows the user to type or To add an input scope for an on-screen edit the contents. An entered character appears briefly and is obfuscated keyboard, configure the input scope to a bullet when the next character is entered or after two seconds. property on the password box control. Gestures supported: The on-screen keyboard appears automatically when focus is set in the password box unless the phone has a hardware keyboard. • Tap – for focus and selection • Tap and hold – for precise caret insertion Is explias ini dolo beatis incto cullis deles untus sam et duciis exceptam adissit, quam veliqui busdae venes sam harcite cernatum faceser ionseque dolupta vendam nam quatiberovit faceped maio volentium debis modissi tem nos rerum, et aborehenisci audionsed quam Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 88. 174 Pivot 175 A pivot control provides a quick way to manage views or pages within the Microsoft will provide a control and application. This control can be used for filtering large datasets, view- design template to support building ing multiple data sets, or switching application views. The control places pivot experiences at a later date. Microsoft recommends that designers individual views horizontally next to each other, and manages the left and and developers wait to implement right navigation. Flicking or panning horizontally on the page cycles the pivot experiences until final guidance pivot functionality. is available and to use the following information for planning purposes only. The content of the page inside the pivot control is defined by the applica- tion. Never place a pivot control inside of another pivot control. Never place a pivot control inside of a panorama control. Applications should minimize the number of pivot pages. Users can become lost if they jump from pivot page to pivot page. Use pivot controls sparingly and limit the use of pivot pages to scenarios where it is appropriate for the experience. Pivot pages should not be used for task flow. Different pages should flow seamlessly in terms of look and feel and user activity should not be changed drastically. Pivot pages must not override the horizontal pan and flick functionality as it collides with the interaction design of the pivot control. There is no limit on the text length of the pivot header. The amount of text that is displayed is constrained by the width of the pivot control. The pivot header is a fixed height and cannot be changed. The pivot control should only be used to display items or data of similar type. An empty pivot page should only be removed when there is no chance that additional information can be added through user action. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 89. 176 Progress bar 177 The progress bar is a control that indicates the progress of an operation. The use of a progress bar is optional, You can use the control to show generic progress, or progress that changes but consider adding one if there are according to a value. wait states in your application that do not require user interaction. It supports a marquee (indeterminate) mode. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 90. 178 Radio button 179 A radio button is used to represent a set of related, but mutually exclusive The tap gesture switches between choices. The user taps on the radio button description text or glyph to selected and un-selected settings. select the control. Only one option may be selected at a time. Radio button description text can wrap to a second line, but try to use either a The radio button control implements rest, press, and disabled states for single or double-line format for design both selected and un-selected settings. consistency. There is no visible focus state. Use a scroll panel instead if there are several choices for the user. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 91. 180 Scroll viewer 181 The scroll viewer allows users to navigate to content that is not directly The Scroll Viewer supports pan and viewable within the frame of the application, such as a long section of text flick gestures. or image. When scrolling, scroll indicators will fade in as the user pans or flicks and fade out after a second at the end of the gesture, but the scroll indicators are non-user actionable. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 92. 182 Slider 183 A slider control is used to set a value from a continuous range of data Applications can use either a horizontal such as volume or brightness levels. The slider has a minimum and or vertical slider, but a horizontal slider a maximum increment value. is recommended. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 93. 184 Stack panel 185 Provides a surface to display child elements in a line; either horizontally or Padding may be required to prevent vertically. crowding or overlapping when placing text that is not part of a control in a StackPanel. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 94. 186 Text block 187 The Text Block displays a fixed amount of text and is used to label con- Always use one of the Windows Phone trols or control groups. The text block stays the same for all states of the OS 7.0 predefined text styles instead related control and supports word wrapping. of hard coding font size, color, weight, or name to support future screen resolutions or sizes. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 95. 188 Text box 189 The Text Box control displays content and allows the user to type or edit Text boxes may be set to read only, but the contents. should generally be used for editable text. Text boxes may display a single or multiple lines. Multiple line text boxes The on-screen keyboard appears will wrap text to the size of the control. automatically when focus is set in the text box unless the phone has a hardware keyboard. Gestures supported: • Tap – for focus and selection • Tap and hold – for precise caret insertion Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 96. 190 User interface text guidelines 191 Lorum ipsum The Metro design elevates text to a primary UI element and having in- Review the Voice and Tone, formed, cleaner, and friendlier text for users will help applications parallel Terminology, Capitalization, and the native Windows Phone 7 text format. Punctuation sections for specific guidance in those areas. Alit modit eat. Sa doloraes dolor anis maiosam Using the Metro style in voice and tone, terminology, capitalization, and inventorum et aut eium quistius explitiis dit punctuation will add an extra layer of fit and finish to any application and can significantly enhance usability of the application by the user. am harchici utent adite comnihilis eiusae ma pa dolorerfere, sitatem hil istione stisquae et illacepudis isto tet molupienet quis sit, tem ea volupta speleni stiusan dentus endae dem quia secessed ene etusa poria si offic tem fugit, nest, tem aut vollaut vendiat volut aute pos vollorest quo od que nam delibea tumquibus none vendestrum harum sit que doloreium quid et occum dolorectinis eniminu stinvende dolest, sere, aliquibus doluptatquia et lacia voluptat aut lamus dolore dolutatem sed et iligent es seditam sum erferit, tecabo. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 97. 192 Text guidelines – voice and tone 193 Many users consider text displayed on computers to be another language Do not use computerese – jargon, called computerese, a jargon-filled, soulless, completely impenetrable for- hexadecimal error codes, or text that eign language that torments them by hindering their ability to complete assumes computer knowledge. tasks and asks nonsensical questions in dialog boxes. Use an authentic and clear voice, and reflect the language that is used by the Windows Phone 7 banishes computerese entirely and developers should audience. as well. The Windows Phone 7 voice and tone should be human, clear and consistent. Use friendly, lighthearted, and empathic tones. Never use an angry or Voice refers to the personality within the text. For example, the voice of mechanical tone in the application. the writer would be their overall personality expressed by what they write. If an application has many text strings, consider consulting with a technical Tone is the overall mood of the text such as happy or angry. The Windows writer or editor to review the text Phone 7 tone is friendly, lighthearted, and empathic. strings. One method to check if text has the proper voice and tone would be to see if it sounds like a friend assisting another friend with something on the phone. An example would be helping them understand an error mes- sage that appears in the application. A developer shouldn’t offer a rigid, uninformative response when trying to explain an issue such as, “Error Code: 4B696C626F.” Many people could be confused or frustrated by that message, as it provides no context or potential solution. However, some- thing such as, “There is some info missing here. Please enter your name in the text box to move to the next page,” is clear, friendly and provides a helpful suggestion. It is imperative to give users a meaningful response in a casual, com- prehensible manner. Help them fix the problem in a way that they can understand. Consider the string, “Synchronize the phone device.” It sounds mechani- cal and stilted. Instead, “Sync your phone,” sounds much more like what someone would tell a friend to do. Another example is, “Schedule a calendar event for tomorrow through Outlook.” It is neither friendly nor representative of how a friend would speak. An alternative could be “Set up an appointment for tomorrow in Outlook.” Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 98. 194 Text guidelines – capitalization 195 A Windows Phone 7 displays text in lowercase and all caps layouts in many Maintain consistent capitalization places, but also uses title caps, where the first and last words of the phrase practices to prevent a disjointed or and all words in between are capitalized, and sentence caps, where only jagged reading experience. the first word of a sentence is capitalized. Use lowercase for: lit modit eat. Sa doloraes dolor anis Title caps exceptions are articles (a, an, the), coordinating conjunctions • Page titles maiosam inventorum et aut eium quistius (and, but, for, not, or, so, yet), and prepositions with four or fewer letters (at, for, in, into). An example would be “Neon Tetras in My Fish Tank.” • List titles explitiis dit am harchici utent adite comnihilis Sentence caps exceptions are words that would be normally capitalized in • List group titles eiusae ma pa dolorerfere, sitatem hil istione text such as proper nouns or feature names. An example would be “I want • Push button control text or words stisquae et illacepudis isto tet molupienet to visit Mt. Rainier in the springtime.” that function as commands • List items quis sit, tem ea volupta speleni stiusan dentus • Example text that appears in search endae dem quia secessed ene etusa poria si boxes offic tem fugit, nest, tem aut vollaut vendiat • Link controls in the middle of a sentence volut aute pos vollorest quo od que nam Use sentence caps for: delibea tumquibus none vendestrum harum • Check box and radio button labels sit que doloreium quid et occum dolorectinis • Progress indicators eniminu stinvende dolest, sere, aliquibus • Status, notification, and explanatory text doluptatquia et lacia voluptat aut lamus • Toggle switches dolore dolutatem doluptatur arcipidunt adictur Use all caps for: sincimos eati audignis nim dolorita coribus • Application titles • Dates and times • AM or PM Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 99. 196 Text guidelines – punctuation 197 Reading UI text that has no punctuation or poor punctuation can lead to Maintain consistent punctuation severe user confusion and frustration. Punctuation helps to clarify ambig- to prevent the user from becoming uous sentences, places emphasis where it needs it, and provide hints confused, clarify ambiguous text, and provide direct emphasis as needed. to the reader about the context of the words they read. The following table shows the standard Compare “Coconuts healthy organic and delicious” to “Coconuts: healthy, rules of punctuation for UI elements. organic, and delicious.” and “Slowly quietly unbuckle it cables kick” to “Slowly & quietly unbuckle it – cables kick!” In these examples, punctua- tion reveals a tasty snack hidden in nonsense and emphasizes a potential ... & . ? ! ( ) danger. Punctuation Mark Usage Guidelines Ampersand (&) Okay to use in settings or menu lists, for example: Date & Time; Clocks & Alarms. Colon (:) • Do not use a colon at the end of labels for controls such as text boxes, drop-down lists, and progress bars. • Do not use a colon when the text box or drop-down list is embedded in a sentence or when the drop-down list appears in a main window. • Do not use a colon at the end of group headings or column headings. • Use a colon to introduce numbers or other variables, for example: Percent Down- loaded: XX% Ellipsis (...) • Use an ellipsis in progress indicator labels to indicate a continuing action, for example, when the user is downloading a file. Even if there is a visual of a progress indicator, you will still want to use the ellipsis. • Do not use an ellipsis in headings. • Do not use an ellipsis in button labels. End punctuation (. ? !) • Use end punctuation only in instructional text in the UI. Do not use end punctuation if instructional text appears in a title bar or button. • Do not use a period at the end of option or check box text labels, even if the label is a sentence. • Separate sentences with one space after the ending punctuation, not with two spaces. • End a question with a question mark. But in general, avoid phrasing labels as ques- tions. • It is okay to use a question mark at the end of a title for an error message or dialog box. Parenthesis () Avoid using a parenthesis in the UI if possible, but use a parenthesis if you need to include an acronym or other short piece of information. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.
  • 100. 198 Miscellaneous 199 Windows Phone 7 has other hardware features available not previously mentioned, including: • Bluetooth • Camera flash • Camera LED • Micro SD • Micro USB • Wi-fi All of these features have no direct UI components and developers will need to create custom UI elements if they need to represent them within their application. Windows Phone 7 UI Design and Interaction Guide – July 2010 Version 2.0 ® This is pre-release documentation and is subject to change in future releases.