You are previewing Windows Phone 8 Development Internals.

Windows Phone 8 Development Internals

Cover of Windows Phone 8 Development Internals by Andrew Whitechapel and Sean McKenna Published by Microsoft Press
  1. Windows Phone 8 Development Internals
  2. Dedication
  3. A Note Regarding Supplemental Files
  4. Foreword
  5. Introduction
    1. Who should read this book
      1. Assumptions
    2. Who should not read this book
    3. Organization of this book
    4. Conventions and features in this book
    5. System requirements
    6. Code samples
      1. Installing the code samples
      2. Using the code samples
    7. Acknowledgments
    8. Errata & book support
    9. We want to hear from you
    10. Stay in touch
  6. I. Core Features
    1. 1. Vision and architecture
      1. A different kind of phone
      2. Windows phone architecture
      3. Building and delivering apps
      4. Getting started with “Hello World”
      5. Summary
    2. 2. App model and navigation
      1. The app lifecycle
      2. The page model
      3. Navigation and state
      4. Navigation options
      5. File type and URI associations
      6. Summary
    3. 3. UI visuals and touch
      1. Phone UI elements
      2. Working with UserControls vs. custom controls
      3. Re-templating controls
      4. Resources
      5. Implicit styles
      6. Dependency and attached properties
      7. The app bar and notification area
      8. Transient panels
      9. Routed events
      10. Logical touch gestures
      11. Manipulation events
      12. Mouse events
      13. FrameReported events
      14. Keyboard input
      15. Summary
    4. 4. Data binding and MVVM
      1. Simple data binding and INotifyPropertyChanged
      2. Data-binding collections
      3. Type/value converters
      4. Element binding
      5. Data validation
      6. Separating concerns
      7. Summary
    5. 5. Phone and media services
      1. Launchers and Choosers
      2. Search extensibility
      3. Audio and video APIs
      4. Media playback
      5. Audio input and manipulation
      6. Music and Videos Hub
      7. The Clipboard API
      8. Summary
    6. 6. Sensors
      1. Orientation
      2. Phone hardware
      3. Sensor APIs
      4. The accelerometer
      5. Compass
      6. Gyroscope
      7. Motion APIs
      8. Summary
    7. 7. Web connectivity
      1. The WebClient and HttpWebRequest classes
      2. The WebBrowser control
      3. Live SDK
      4. Facebook
      5. Twitter
      6. The Data Sense feature
      7. Summary
    8. 8. Web services and the cloud
      1. Web services
      2. WCF data services
      3. Web service security
      4. Windows Azure
      5. Summary
    9. 9. Background agents
      1. Background tasks
      2. Alarms and reminders
      3. The Background Transfer Service
      4. Generic Background Agents
      5. Background audio
      6. Summary
    10. 10. Local storage and databases
      1. Local storage
      2. LINQ-to-SQL
      3. SQLite
      4. Summary
  7. II. Windows Phone 7 to Windows Phone 8
    1. 11. App publication
      1. Preparing for publication
      2. The publication process
      3. Dev Center reports
      4. Updates
      5. Beta testing
      6. Versions
      7. Selective targeting
      8. Summary
    2. 12. Profiling and diagnostics
      1. Debugging
      2. Testing
      3. Profiling
      4. Performance best practices
      5. Summary
    3. 13. Porting to Windows Phone 8 and multitargeting
      1. Lighting up a Windows Phone 7 App with Windows Phone 8 features
      2. Quirks mode and breaking changes
      3. Managing platform-specific projects
      4. Windows Phone 7.8 SDK
      5. Test coverage for Windows Phone 7.x apps
      6. Summary
    4. 14. Tiles and notifications
      1. Tile sizes and templates
      2. Secondary tiles
      3. Push notifications
      4. Push notification server
      5. Push notification client
      6. Registration web service
      7. Additional server features
      8. Additional client features
      9. Push notification security
      10. Summary
    5. 15. Contacts and calendar
      1. Contacts
      2. Calendar
      3. Summary
    6. 16. Camera and photos
      1. Acquiring a single photo
      2. Working with the media library
      3. Capturing photos
      4. Extending the Photos Hub
      5. Lenses
      6. Sharing photos
      7. Summary
    7. 17. Networking and proximity
      1. Sockets
      2. Finding your app on nearby devices
      3. Connecting to other Bluetooth devices
      4. NFC
      5. Summary
    8. 18. Location and maps
      1. Architecture
      2. Determining the current location (Windows Phone 7)
      3. Bing maps (Windows Phone 7)
      4. Getting location (Windows Phone 8)
      5. Maps API (Windows Phone 8)
      6. Continuous background execution (Windows Phone 8)
      7. Testing location in the simulator
      8. Location best practices
      9. Summary
  8. III. New Windows Phone 8 Features
    1. 19. Speech
      1. Voice commands
      2. Speech recognition in apps
      3. Text-to-Speech
      4. Putting it together to talk to your apps
      5. Summary
    2. 20. The Wallet
      1. Understanding the Wallet
      2. The Wallet object model
      3. Wallet agents
      4. Summary
    3. 21. Monetizing your app
      1. Advertising
      2. Trial mode
      3. In-app purchase
      4. Summary
    4. 22. Enterprise apps
      1. Windows Phone for business
      2. Managed vs. unmanaged phones
      3. Unmanaged phones
      4. Company Apps
      5. Building a company hub app
      6. Summary
  9. IV. Native Development and Windows Phone 8 convergence
    1. 23. Native development
      1. Native code overview
      2. An introduction to modern C++
      3. Managed-native interop
      4. Writing asynchronous code in C++
      5. Using Windows Runtime classes in C++
      6. Win32 API
      7. Component Object Model (COM)
      8. Summary
    2. 24. Windows 8 convergence
      1. Windows 8 and Windows Phone 8 compared
      2. Sharing code between Windows and Windows Phone
      3. Summary
    3. 25. Games and Direct3D
      1. Direct3D primer
      2. Direct3D differences on Windows Phone
      3. Visual Studio project types
      4. Direct3D and XAML projects
      5. Structure of the basic Direct3D app
      6. Minimal Direct3D app
      7. Touch input
      8. Direct2D and DirectXTK
      9. Summary
  10. A. About the Authors
  11. Index
  12. About the Authors
  13. Copyright
O'Reilly logo

Chapter 4. Data binding and MVVM

Sooner or later, your app will need to present data in the user interface (UI). Most modern programming frameworks provide mechanisms to make rendering data in the UI simple and robust. At the same time, these frameworks promote better engineering practices by cleanly separating the data from the UI, establishing standard mechanisms for connecting the data and UI in a loosely coupled manner, and ensuring that components consuming the data are conveniently notified of any changes (either initiated in the UI or from the underlying data source) so that the app can take appropriate action. The feature that carries out all this cool behavior is called data binding. This chapter examines the data-binding support in the ...

The best content for your career. Discover unlimited learning on demand for around $1/day.